That is NOT how the Pokemon competitive works.
First off, the pokemon roster is subdivided into various tiers. If you go to a tournament, the tournament allows up to X rank. Any pokemon in a higher tier is banned even if they aren't that good within the tier itself.
So in a sense, yes, it allows a large variety of pokemon to be played because you have 6-8 tiers depending on who you ask. But then you realize that's just like saying League has high diversity because the champions are different from DotA2, HotS, and HoN. If you actually look WITHIN a tier, you will find exactly the same thing as in League; the tiers are (subjectively) laid out so the 80-150 pokemon in that tier are ranked from best to worst.
And guess which pokemon get spammed over and over and over again? No, it's not a handful. It's about 30% but how many champions get played over and over again in LCS? Pokemon has much more versatility with balance because there are so many niche pokemon, but niche is not a codename for OP or sleeper OP. Niche means that if you believe the enemy is going to do something crazy, this element will do very well against it. If you think the enemy is going to do something expected, you are going to strategize against it. If you are going to counter that standard play with something unexpected, then it's niche, but that doesn't mean it's better than the standard counter.
There are worthless pokemon not named Magikarp that no one at any tier plays in competitive because they are too weak to compete in the current tier but too strong to compete in a weaker tier.
Also, there are plenty of Uber tournaments just like there are some tournaments that allow Meta Knight. It's not serious, but people still want to use Rayquaza and Blaziken. And FFA meta knight only is funny as hell to watch.