I just think that the training of ubers puts the other four hundred seventy something pokemon at an unfair disadvantage. I mean sure, there are those who are naturally horrible, but I think I'd rather have about twenty, thirty mons outclassed than 97% of the entire pokedex.
You can take pride in Ubers, sure, you can train them, EVs, the whole nine yards, but that just makes them even more impossible to beat when everything is stuck at level 50, and the base stats of legendaries are already 20 to 30 points higher than your average mon. It's hard enough beating them when noobs who don't have a clue what they're doing are using them, but when you get someone who actually knows how to train properly, it's completely unfair. Say you take a perfectly trained Jirachi and pit it against me, I wouldn't stand a chance with my team lacking in the ubers department. Which means I either stay with the team I have, pokemon I enjoy, and lose, or I limit myself to the fifteen or twenty legendaries that I don't necessarily enjoy using just to stand a chance.
Simply put, I think the use of Legendaries forces the other player to make some unpleasant decisions, and stagnates the meta. It puts trainers in a lose/lose situation. Use a fun team, and lose, or use a no fun legendary team from a pool of thirty or so mon, and MAYBE win. And if trainers opt largely for that second option, it means that you will see the same god forsaken pokemon over and over and over again. the same thirty pokemon, while the other 460 gather dust.