I was thinking "it doesn't suit Giovanni to have a Kangaskhan, who has strong maternal instincts". However, that's when I realized, that it suits him a lot. Few Pokemon would like to cause harm. So, to make up for that, he probably would have threatened to harm the cub if Kangaskhan didn't obey him. This same logic serves for him to have a Nidoking and a Nidoqueen. It also serves him to have a Marowak, although he only has one in PWT, at the time he was probably already acting legally, and in Battle Agency, where it wasn't really him. If you're going to extend this logic further, you can also use it for Dugtrio.
Eh, I think Giovanni is above threatening his Pokemon. Remember, Giovanni's whole thing is that he is, or at least thinks himself, as "the strongest trainer". His Pokemon (and many of the Rocket Grunts for that matter) don't follow him out of fear and intimidation, they follow him out of loyalty because of his strength, intelligence, and charisma.
As for why he uses a Kangaskhan, I gotta go with
R_N's theory. Was probably meant to be Marowak's beta evolution that was scrapped. "But why didn't they replace it with a Marowak or Nidoqueen or Nidoking...". Good question, don't have an answer. Aside maybe throwing it in as an in-joke, another possibility is that Marowak's evo was a late removal where they already had formed at least the first two Giovanni battles. Marowak's evo shares several things in common with Kangaskhan, notably having a baby in its pouch, so Kangaskhan's placement there was very much intentional and meant for the Giovanni battles a Kangaskhan was in those spots which looked enough like a Pokemon that Giovanni would use.
From there on, any other instance of Giovanni using a Kangaskhan is either because its a remake (though Yellow & Let's Go replaces it with his Persian to reference the anime) or just a reference to him using one originally. The only one which stands out to me is in HGSS. The Event Giovani battle has him only using four Pokemon so you probably think it would be his Gym team minus the Rhyhorn (and a Rhyperior instead of Rhydon). But, no, it's Nidoqueen, Nidoking, Honchkrow, and Kangaskhan (oddly no Rhyperior or at least a Rhydon holding an Eviolite). Honchkrow is an obvious pick, criminal mastermind theme, though Kangaskhan feels odd being here as there was really no reason for it to be aside from the reference. I guess they could have just wanted more Type coverage, though even then Kangaskhan only knows Normal, Dragon, and Dark-type moves. I'm curious if maybe, and this would have been complete serendipity, that they decided to have Giovanni keep Kangaskhan because of a paternal theme. A big thing about the Event Battle in HGSS is that it comes about Celebi sending the player back in time to witness key events, including seeing Giovanni going into hiding after disbanding Team Rocket and Silver confronting him about it (which was also official in-game confirmation Silver was Giovanni's son; yes the manga has it as a plot point but the games and manga are their own continuity). After that you pretty much confront Giovanni, who had been living alone for 3 years with his last major interaction being a rough "farewell" to his son who hates him. Kangaskhan is his weakest Pokemon, which could be showing he's hanging onto it out of sentimental reasons: it reminds him of his son.
I also have theories for his plans with the Rainbow Rocket. I don't think he was supposed to want an army of UBs just because he thought they were strong. I think it has a lot more to do with practical use. They are found in droves on their home planets. Apparently, Giovanni could freely travel between dimensions, so I think traveling there would be pretty easy. Meanwhile, they all have their own use. Nihilego: mind control, Buzzwole: tasks that require brute force, Pheromosa: chases, Xurkitree: electric power, Celestela: rocket, Guzzlord: mass destruction, Naganadel: flight, Stakataka: mobile barrier, Blacephalon: entertainment.
Another interesting thing to note: after you complete the Rainbow Rocket Episode, if you go to take a photo at Alola Photo Club, you are informed that a man dressed in black, who called himself Rainbow, had given the villain teams stickers for everyone to use. To support the theory I'm going to present, I'm going to assume he did it right before you faced him. These stickers were probably intended to promote the Rainbow Rocket, but based on that, we have something curious: among them we have one from Team Skull. Because? Here comes another theory: Giovanni planned to get Guzma to join him, so he wanted to appear on television. He knew Guzma would be attracted to Lusamine being in danger. He would likely use means like Nihilego, if necessary, to gain control over Guzma. Why would he do that? Because Guzma is not only strong, but he has control over many people.
Well, honestly what you suggested still suggests Giovanni wants an army of UB because they were strong with the bonus of being useful. BTW, I think the secondary use for Blacephalon would be more than entertainment, it's a living explosive.
As for Giovanni having a Team Skull sticker, if we were to give a lore reason why he had it aside GF's excuse of giving you villain team logo stickers, maybe it more has to do with a failed reconnaissance. Rainbow Giovanni set forth looking for all the villain team leaders who, up until Gen VII, were pretty easy to spot. Gen VII however mixed things up by having Team Skull not be the real villain team but rather the Aether Foundation which presented itself as a humanitarian wildlife reserve. I think the RR Episode has showed us the Rocket Grunts aren't the sharpest knives in the draw, so the scouts he sent to Alola just saw Team Skull running around causing trouble and assumed them to be the villain group. And so, with all the villains "figured out", Giovanni began his propaganda plans which includes merchandising the team logos. Then when they finally planned their invasion of Alola did Giovanni likely figure out Aether Foundation was the REAL big bads, thus as punishment for misinformation and making him waste propaganda resources made his Grunts form human mazes in RR Castle (at least that's my new theory). But, yeah, after realizing Lusamine is the villain he wants he probably could care less about Guzma and Team Skull, they're just a bunch of street punks.
His pool of Pokemon in the manga is truly bizarre. Despite also being a Ground-type specialist there, he has a Beedrill (his starter Pokemon, so fair enough), a Cloyster, a Crobat, an Aggron, and he also seems to have claimed Silver's Ursaring too.
Not sure how much they leaned into in the manga, but in the anime they pretty much leaned into his crime boss persona and one of his main things is having his grunts send him rare Pokemon (hence the Rocket Trio always trying to catch the Pokemon of the Week to present to da boss).
In the anime you see his collection of Pokemon of many different types.
Yeah, Giovanni having a Charizard sounds pretty...forced. Not his kind of mon, IMO.
Eh, not really if we go by the anime and manga version. Maybe forced for the Origins and actually in-game version.