Paying for free stuff
If companies need the income from advertising, why not just have the option to directly charge users instead? If, for instance, Facebook charged (say) £3 per month in return for the promise of no advertising or tracking, they'd get broadly the same per-user income either way. News websites might want to charge per page view, as people probably wouldn't want a regular subscription to lots of them, so some kind of micro-payment provider would be useful, but none of this is particularly difficult to implement. It might turn out that most people are happy with the "free stuff+advertising+tracking" model, but those who didn't like it would have an alternative.