I think I have even more elegant solution. All IP should be subject to a tax (or maintenance fee or whatever you want to call it). As soon as the IP owner fails to pay the tax, IP falls to public domain irrevocably. The actual structure of the tax can be subject to debate. I would propose a highly progressive tax over time, for example for patents something like $100 for the first year, then doubling every year.
Seriously, why should IP not be taxed? We tax almost everything else that is possible to tax. Especially given it is far from certain that IP is net benefit for society. (I'm willing to give the benefit of doubt though, that's why I am not proposing to abolish IP completely)