As far as "fixing" the problem, I think it would be important to expand voters' influence over the company in addition to voting changes like you described. I don't know how to make it feasible, but IMO voters should be able to influence or directly decide much lower level business decisions than they currently do