I strongly suspect that a lot of it is the fact that the employer winds up in a very strong bargaining position with the employee. It's a case of, You do everything I say for whatever I say or you are kicked out of the country. Even if you are willing to be paid less, you aren't as easy to order around. (Of course the H1B workers are more likely to accept subpar wages.)
If the employers didn't have this bargaining advantage, I believe that employers would be less enthused about H1Bs.
Cheers,
Ben