How to fix it, eliminate it.
Not only are the US firms abusing H1-B, the consulting firms from (for example) India are setting up a US footprint & using H1-B to get low cost folks into this country. The quality is not there, but the low cost & quantity is.
There are many Americans that can fill these positions, but the US firms don't want to pay a living wage.