I have no experience with memcached, but I understand that IO are cheap there.
I'd go with your tag implementation, make sure the tag list is used frequently and hope that the internal mmcd' logic would "think" that it's something too busy to be dropped :)