So basically you want the clients to store their data themselves? I actually thought about such a thing as well, but that would have severe performance implications, or require a DHT-like storage where stuff gets chopped up and replicated on a bunch of other clients, meaning those other clients would not only have to offer extra storage, but also experience a lot of bandwidth usage.
Yes. Although I don't see the performance issue. Random read, and serial write access to a 2TB NVME flash drive is really really fast. And I want to point out that back when Dejanews posted archives of the entire Usenet over several years worth it was a couple hundred megabytes of text data.
Remember that since it is only topics/people "you" the client choose to follow and/or post about it really isn't that much data. There are likely a zillion subredits you never read, and will likely never read. So your client never needs to fetch that data. If you get a referral to some data on separate thread in a separate "group" only that thread need be fetched/indexed, you may choose then to subscribe to that "group" and fetch both history and new posts but still it would be small.
as I understand it, this is what nostr does. The relays are pretty dumb and make no promises on long term storage (I imagine it would be a few weeks-months).