I think one of the main issues is that the current employment classification is too binary. There are independent contractors, who are really independent small businesses: set their own rates, do their own advertising, choose their own customers, and keep all of the profit. And employees, who work for their employer for set hours, and get a stable salary and benefits in return.
We need a new third category: dependent contractor. Once that exists, we can start a more meaningful debate on what freedoms vs stability guarantees are best for it, without trying to force people into one extreme or the other.