If you do consider SR suspect, then the range of Pokemon that can use it is surely a factor. It's learnt by so much that I reckon you'd struggle to build a decent OU team with no Pokemon capable of learning the move - even if playing in a SR-banned metagame. Thus, any team can find a space for it - and given the advantages, they do. If SR was only learnt by a dozen Pokemon, would it be so prevalent? No move can be broken in and of itself, it can only be broken if there are Pokemon that can use it brokenly. To take an extreme example, give Luvdisc a 200 Base Power priority move and it still wouldn't be broken.
I could not disagree with you more if I tried. That is the entire problem with Stealth Rock.
It is broken in and of itself, because it's use does not depend upon the Pokemon using it.
Take powerful moves like Draco Meteor, or Explosion. Clearly, both are incredible, and able to end games, break through walls, and clinch matches. However, much the way your exaggerated example implied, if it is used by a Pokemon that does not formulate with it accordingly, or beneficially, it will not work effectively.
Salamence with Draco Meteor is a powerful force, much the same way Metagross with Explosion is a powerful force. However, their effects are dependant on a few factors. Attack/Special Attack is one factor. If we give Draco Meteor to a Gible, suddenly that move is no longer effective, because it does not support the stat to use it well--it is too weak. Speed is also another factor. If user is too slow to use the move, unless it has the Defense/Special Defense to brace whatever is thrown at it until it can use the move, then again this becomes a problem. STAB is also something to consider. If Draco Meteor is given to Salamence, it's power increases by 1.5, simply for sharing type attribute. Draco Meteor is not learned by anything other than Dragon, but if an equivalent move, say Overheat, were given to Salamence, it's power drops further. This is all very self explanatory, but the point that I am making is that the move in question depends on the Pokemon using it.
Stealth Rock ignores this rule. It is just as effective as if it were used by a lvl 5 Sandshrew as it would be by a lvl 100 lead Azelf. Clearly the Azelf would be the better option, because one would not want to waste synergy and a party slot on a useless Pokemon, but for the purposes of acting out the use of Stealth Rock, the move needs minimal support, and the Pokemon using the move is nearly irrelevant. It won't matter if a lvl 5 Sandshrew with Focus Sash starts off the battle using Stealth Rock, because your Ninjask or your Salamence or your Weavile are going to lose that 25%-50% health on switch just the same had an Azelf used it.
And please do not take the Sandshrew example and run with it, because it was a completely unnecessary, but very straight forward example. Clearly we are seeing the use of multiple OU, very powerful Pokes using this move, but my point stands to reason.
Hypothetically, if the users of Spikes and Stealth Rock were switched, I reckon Spikes would be the entry hazard everywhere, and people would be complaining that it gave an unfair advantage to fliers and levitators.
No, because Spikes worth would not change. It would still take 2-3 turns to set up, it would still require a solid ghost to be used on your team, and the benefits would be the same. The fact that a million Pokemon learn Protect/Detect does not make them useful. It's the quality of the move itself. Now, if Spikes had a type attribute that damaged based on the types that switched in, then you might have an argument. But even then, it still wouldn't be as good or as commonly used, because it doesn't set up in a single turn.