I worked on this before. You can solve the privacy issue using "statistical payments", by lack of a better word.
You visit website A,A,A,B,C,D,A,A
At the end of the month, you send your entire 20$ randomly to one of the websites you visited.
This will level out everyone's contribution and reward websites with lots of traffic. It eliminates the need for micropayments.