If you wanted to do that, it’d probably be best to modify rpc.cpp and deal with nValue directly.
The recipient doesn’t need to do anything special to receive the coins, though they’ll probably end up throwing away most of the additional (sub-0.01) bitcoins. You’ll also be throwing away coins, but probably more frequently — you might lose a lot of them this way.
You could eliminate losses from dealing in sub-0.01 bitcoins (for yourself) by improving the way Bitcoin chooses which coins to send. It currently doesn’t try to avoid the “dust change” situation, so it happens randomly.