I agree in general terms, but the solution would be to pass stricter laws requiring more benefits to full-time workers. These contractors are full-time workers, they're just full-time workers of staffing firms that contract with Google and that themselves don't have benefits that are nearly as good. So either require them to offer better benefits, or preferably, decouple benefits from employment entirely. Everyone should get healthcare, retirement accounts, etc.; it shouldn't be tied to your employer.
It's unreasonable to expect one company to make big strides in this area when all it does it put them at a competitive disadvantage to their peers. Google is already mandating a $15/hour minimum wage on all contracted-out workers, plus some minimums for sick days, which is much better than most other companies (which tend not to have requirements on contracted out employees in their contracts with staffing firms at all).