As far as the font color, I’ll add some css to force it to black on hover, that should take care of it.
Adding a border does affect the layout in that it will increase the size of the block element by the width of the border. Outlines, on the otherhand will not affect the layout but they are not supported by IE.
As far as the caching goes, I am aware that this is a problem and I’m working on a solution now. I’m not especially familiar with the way that caching works in MODx (I’ve always considered it a necessary evil

) so I’ve been trying to give myself a crash course. But if someone who knows the caching system well would like to give me some advice I’d be happy to have it.
So far, I’m thinking of going with something like using [*tvname:editable*] and replacing it with [*tvname*]<!-- EDITLINK:tvname --> and letting it be cached and then replace <!-- EDITLINK:tvname --> with <a href="...">edit tvname</a> just before rendering. The other option would be using [!tvname:editable!] and replacing it with [!tvname!]<a href="...">edit tvname</a> in one step. What I don’t like about this is that it doesn’t let you cache any of the editable TVs.
Does this sound like a good idea? If anyone has a better idea I’d love to hear it.