A variety of other non-software jobs also rely on H-1Bs: See, for instance, lab technicians. A change to highest salaries, while probably way better for the software industry, and applicants in general, would wipe out other sectors.
The system definitely needs fixing, but simple solutions often have all kinds of negative side effects.
The simple solution is to pay them more if they are so vital. Their value is directly related to their pay.
The issue often isn't that talent can't be found... it's that talent can't be found at the price the corporation wants to pay. We need to encourage corporations to pay more which should correspond to the most essential positions needed, not just find the cheapest worker.
The system definitely needs fixing, but simple solutions often have all kinds of negative side effects.