Balderdash. memcached is actively hostile to modern infrastructure and it's not being actively developed except for routine maintenance.
The first time someone stores an entire data structure in a memcache key is the moment you've lost. Playing "read blob, deserialize, update, serialize, write blob" is just dumb when you can avoid it.
Other moments of great failure with memcached: needing to implement client-side or proxy-based replication, having the memcached process refuse to cache more things because a slabs become broken, the first time your developers don't understand memcached LRU is per-size category and not global, ....
Just Say No to Memcached.
Why gild the lily?
> needing to implement client-side or proxy-based replication
It's best practice to replicate the persistent store for availability, not the cache.
Almost all your other concerns appear to arise out of fundamental misuse. It's a cache, not a panacea to cover up basic design flaws in a primary data store.