This is a bit of a tough decision, admittedly, but it hinges on whether or not your son would like a pokémon capable of evolution.
You see, if we’re only considering base evolutions, vanillite is actually the harder of the two to care for. While it doesn’t need much in terms of basic care (it only needs water and food and is perfectly content staying indoors, playing easier games with its owners), it does require cold at all times. This means an air conditioned room in your home all year round, as well as enough space in a freezer for it to rest if it gets sick. Technically, it can survive at warmer temperatures, but you may find that it will be a bit more lethargic than how it was when you caught it.
Conversely, cubchoo doesn’t necessarily require cold; it simply prefers it. If trained properly, cubchoo can survive at pretty much any temperature short of tropical or desert heat. However, it’s a far more active pokémon than vanillite and requires daily exercise and training. On the other hand, a daily walk or an easy game of fetch may be enough for some cubchoo, but this only means you’ll need to be careful when selecting your catch. The cubchoo you give your son must be of a calmer nature, or you’ll find that it will need a more active lifestyle than what your son may be able to provide.
Conversely, if your son evolves his pokémon, then the advantages will be flipped, so to speak. As a vanillite progresses up its evolution chain, its ice powers will grow stronger and stronger. In turn, this means it will gain the ability to adjust the temperature immediately surrounding it to its own liking, which will make keeping one indoors a much easier task. (As a side note, yes, some vanilluxe gain the ability Snow Warning as a result of its strengthening powers. Many believe this to mean that it will always be hailing whenever one is present, but this is only true on the battlefield. Otherwise, a tame vanilluxe with the Snow Warning ability will just be keenly capable of producing that cold aura.) Meanwhile, its needs, including its activity requirements, will likely stay roughly the same, and it’s likewise a very easygoing and caring pokémon.
On the other hand, beartic are notoriously more difficult to care for. It is, after all, a giant bear with ice powers, and as such, its appetite will grow considerably, its space requirements will increase, and, most importantly, it will require more vigorous exercise than before. (Again, it’s possible to have a more sedentary lifestyle with a beartic, but it’s not particularly healthy.) Likewise, remember that beartic are apex predators, and they need to be trained behaviorally as well. Otherwise, their tempers, which they are also notorious for, can be quite dangerous to anyone around their trainers.
So ultimately, it comes down to this: if your son has no intent of evolving his pokémon, consider a cubchoo. Catch a docile one and give it an everstone, and your son will have a partner who will be fairly easy to care for.
If, however, he would prefer to let his partner evolve, catch a vanillite. Just be sure you have enough room in your freezer for it, or help your son train it until it’s ready to evolve. Either way, over the long term, vanillite’s evolutions are excellent indoor companions.
Best of luck!