There's no lease. An H1B worker can switch companies freely with little hassle. It's the L-1 visa that has a lease. Congress passed a law in 2000 called 'AC21' which brought job portability for H1B workers. I don't know why I keep hearing people on HN and elsewhere talk as though AC21 never happened over and over again. Please have the sense to do some basic research before forming your opinions. Lastly the cost to the company is actually around $4-5k.
H1B portability is a misnomer. All that happens is that the new employer applies for a new H1B for you, which is not subject to the cap. So you are just tied to the new employer. Portability here just means that you can choose which employer to be tied to.
You do realize that "tied to" implies that you can't change jobs? But that's not the case with H-1B workers. You can switch jobs at will, and even work multiple jobs (with concurrent petitions) at the same time.
Furthermore, AC21 enables you to begin working as soon as your next/future employer has filed a petition – so you don't have to wait until USCIS makes a decision. With a good employer and attorney, USCIS will generally approve the case (although I'm sure there are outliers).
In practical terms, the effect of AC21 is that (for the most part) it allows you to take up any job in that is directly related to what you major. The employer has to spend a bit on the petition and on an immigration lawyer, but in our industry it's a drop in the bucket compared to what they'll be paying you annually.
I'm 99% certain actually being on the payroll of multiple companies while on H1B is a felony. You can still be working for your original employer while your petition with the new one is underway, or start working with the new one once you receive your petition receipt, but definitely not both at the same time.
I'm not sure what industry you're in, but 20k out of a software dev's 60k-100k salary is a very very big drop, especially for a junior/fresh grad hire. And of course, 20k lump sum is out of the question for many startups.
I have switched jobs under AC21, and I have since gotten permanent residency.
While you can change jobs, your new employer has to both be one that wants to handle H1-Bs (and many smaller ones don't). On top of that, if you were applying for an employer-sponsored green card, like most H1-Bs want to do, then guess what? You have to get your new employer to sponsor you too, depending on the part of the process you are in. And while asking an H1-B to pay for his own visa costs is illegal, as far as I can tell, asking someone to compensate the company for legal fees trying to obtain a still pending green card does not. In my last job before the green card, I had a nice 20K anvil hanging over me if I left before green card +1. And that process took about 7 years, thanks to visa limits. So yeah, I could have changed jobs again, but it would not have been cheap for me.
And all of that, while knowing that getting laid off leads to either leaving, or staying in the US illegally for a small period of time, which is one of the few reasons the USCIS agents can find to end up denying a green card application.
So I am glad AC21 exists, but the freedom an American has and the one an H1-B visa holder have are nowhere near equivalent.