I came up with a protocol that I think allows a node to prune its utxo set and still count as a fully validating node. So I no longer think it's true that it has to be held in ram -- I don't think it needs to be held at all, though I think the more of the utxo set you "keep around," the faster IBD would be. 

Gist
Idea for pruning the UTXO set in bitcoin
Idea for pruning the UTXO set in bitcoin. GitHub Gist: instantly share code, notes, and snippets.