I think domainers have a right to register domains. I don’t think they should be able to do it with no risk and no cost. Domains are a public good and no one should get a free ride.
Should we let people buy government land at low prices, check for oil or gold and get a refund if they don’t find any? How about buy unused spectrum at low prices, if they can’t find a valuable application for it – return it to the government? Perhaps the government should sell bonds and if interest rates go up allow people to get their money back?
I think domainers have legitimate businesses, but the loophole regarding refunds does not make sense to me. ICANN could just change the rules to not allow refunds. But maybe a better way would be to charge a small fee to return a domain? Or perhaps a lower price for a shorter window - $1 to register for 30 days. The wackiest idea might be to auction off expired domains and use the money to fund advanced ICANN projects.
I think the bigger problem with domainers may be that in the drive for growth they sometimes engage in sketchy behavior to drive traffic – search engine manipulation for pages that only have ads or irrelevant traffic arbitrage. You can see examples of how Marchex has been using Google and their partners to drive traffic to Yahoo ads.