It's probably security concerns regarding cheap spam attacks on the network that have prevented development of better support for proper microtransactions, but perhaps also the fact that user interface convenience isn't currently a priority.
Spam attacks are only possible if the transaction clears, isn't it? If the transaction is reversed in X blocks because no nodes would accept it without a fee, then there would be no spam attack?
And I'm not really talking about microtransactions. If BTC ever hits $300, then sending 0.01 BTC or even 0.001 BTC isn't that unthinkable.
I don't know about the technical details of whether failed transactions can also be part of a spam problem.
If BTC exchange values were so high - then there would presumably be no problem for the devs to release clients that allowed low/no fees on 0.01, 0.001 BTC etc because the cost of spamming at those levels would be higher.
The fee settings have changed in the past and can change again.