The fix to online ad fraud is obvious: CPA (Cost per action). If a signup occurs, then you pay for the ads. If a user pays for the service, then you pay for the ads. It would align the incentives of the advertisers (people paying for ads) and the ad networks (google). Currently it is the ad networks incentive to use CPC and to hide fraud by not releasing traceable ids, allowing clicks from bots/proxies/adsense holders and allowing ads on unrelated content which cause accidental clicks. CPA would incentivize the advertisers (people paying for ads) to commit the fraud by not reporting the action. This would be easier to maintain since the people paying for ads is a much smaller set. BUT - from my experience there would be almost no money in this system for Google since most of their income is from fraud.
All of advertising is selling possibilities, not actions at (relatively) super low rates. So that means there is more competition and a broader playing field.
My guess is that prices would go up dramatically if you started selling on CPA - and the ad tech business model would change significantly.
Seems like the best way to do this would be to hand curate targeted advertising and then charge a huge premium.
Disclosure: worked in ad tech.