A refusal to use certain Pokémon on quote-unquote "ethical" terms has severely limited my team-building, and still does.
I keep a mental list of what I'll allow myself to put into a team. The list includes "whore" Pokémon like Blissey and Cress, bog standard metagame staples like Swampert, Salamence, Gyarados, Celebi, and a lot of new Pokémon, especially the ones I have decided look retarded - Heatran, Lucario, etc. These boundaries are entirely arbitrary and are generally decided on a Pokémon's look and feel, as well as what generation it is from. I harbour some fatal attraction towards the 1st and 2nd generation and most of my teams are at least 66.67% "old school" Pokémon.
Additionally I force myself to eschew the standard movesets and team strategies whenever possible, and often rely on surprise tactics and rare or unexpected mechanics (Trick Room comes to mind, as does Rain Dance).
Of course building a team that conforms to my arbitrary purism in both form and function leaves my team inevitably weaker than if such restrictions were lifted. Something like Cress could easily wall whatever special attacks Venusaur and Slowking together are trying to wall, and then some - but a win on the ladder with the whore on my team feels empty and sullied, as if I had "sold out".
I know well that "standards are standard for a reason" and that no one ever climbed the leaderboard playing with their favourites (and don't tell me Salamence and Blissey are your favourites). But I still think I enjoy a few wins here and there with a unique team more than a leaderboard-climbing streak with the bog standards. ...And that's why I'll never be any good.