The reason why 512 MB of RAM on a router is overkill for 90%+ of users, here's what memory usage is like on my RT-AC88U:
Code:
admin@Stargate88:/tmp/home/root# free -m
total used free shared buffers
Mem: 515308 123256 392052 0 9304
-/+ buffers: 113952 401356
Swap: 0 0 0
I'm barely using half of what a router with 256 MB of RAM would offer.
Don't forget that heavy caching for file services is only useful if the same data is requested multiple times - a scenario that's very rarely the case when dealing with shared data (be it movies, music or other documents). Caching becomes important mostly with data that gets a lot of random access. For instance, a database. You wouldn't store a database or your Outlook PST on a network share hosted by a router, as your bottlenecks would be pretty bad.
The other scenarios that would involve a lot of random seek access are highly unlikely to be used with a router (video/audio editing for instance).
So for a router that shares a USB disk, you typically want enough caching to contain filesystem metadata. The file data itself rarely needs to be re-read a second time, so you would most likely NEGATIVELY impact performance, as that file that gets only one single access would force cache maintenance on top of the file sharing. Maintaining cache data comes at its own price, overhead-wise.
So, 512 MB might be nice for a router, but for the next couple of years, I'd say that the vast majority of users will not even fill up their 256 MB RAM with their home router. So right now, I wouldn't consider 256 vs 512 MB RAM to be a decision factor when choosing a new router. The CPU speed is far more important (and even then, only if doing anything more than providing LAN/wifi access).
Once we start getting memory intensive applications such as IPS (snort and the likes), then we'll start worrying about the memory on our router.