I have yet to see a reason behind shitmons that aren't justified in the lore. Especially rare ones.
Take, I dunno, Yanma for example. Why is it so rare, why was it so bad?
...does there
have to be a reason?
No, but really. In a game centred around rooting out elusive monsters from a variety of locales,, rare does not and should not necessarily equal strong.
Junk rare is a trope in all manner of video games, though Pokemon admittedly does go quite hard on it.
The games even make this point explicitly. A Gentleman on the SS Anne in RGBYFRLG asks "which would you prefer, a strong or a rare Pokemon?" - one does not imply the other. Some of the game's most powerful Pokemon, like Alakazam, Machamp, Gyarados, Gardevoir, and Slaking, are all extremely common. This is not to say that there aren't strong
and rare species - Tauros, Heracross, Milotic, Kingdra, Lapras, Lucario - but there's variety in the species available.
And for a lot of people (me included) this is part of the charm of the series. Convoluted methods of obtaining Pokemon can sometimes be frustrating, but I'd argue it's far preferable to making every Pokemon easily accessible. That'd get very dull very quickly. Admittedly I tend to look up the stats and details about Pokemon as soon as new games come out, but I'm sure lots of people don't - and they may well enjoy the discovery element of trying out what they catch and finding that the Pokemon they took a while to obtain isn't all that.
To get back to the point, I genuinely don't see why being uncommon should make a Pokemon powerful. Pokemon Go also does this quite well with regionals IMO - most of the regionals are Pokemon which in the main series aren't spectacular (Corsola, Tropius, Farfetch'd, Mr Mime, Pachirisu, Bouffalant, the elemental monkeys et al) but their scarcity has done a lot to renew my interest in them.