Earlier quoted context omitted.
So an obvious solution would be allowing H1B holders to freely change jobs, even with gaps. Accordingly, the employers won't be able to lock the visa holders. Then there will be fair competition that makes sense. But anyway the big companies don't want to lose the "lock" so it would be hard to change.
Clarification in case any H1B holders are reading: you absolutely can transfer your H1B visa, though I think a break of more than 30 days would be a violation. The trick is when you H1B employer also offers to sponsor your green card. That isn't transferrable, and if you're from certain countries (like India) it can take up to ten years to get one.
Yes but the priority date itself is transferable. This allows you to job hop as many times as you want, without losing your place in line. If you have to wait 10 years for your green card, you might as well take advantage of this option and only worry about your green card 9 years down the road.