I dunno how content curation could work. One idea off the top of my head might be to have servers which act as gateways and servers which act as indexers.
An individual server might have some sort of compact index which the indexer could index. The indexer wouldn't store the actual data so to save as much on disk / database space as possible.
The user could have an app (maybe a web app) which queries a set (i.e. for load balancing purposes) of indexers for public posts (the query might denote something like what interests they subscribe to, maybe also negative prompts, maybe someone doesn't like AIArt) and the gateway for visibility restricted posts (and anything else, if the index isn't adequately complete).
They could then hand the results to the gateway to get the actual data.
The idea is that rather than having every gateway having to maintain a complete index of the fediverse (or the accompanying data), the logic of figuring out what is on the fediverse could be off-loaded in a more efficient manner to an indexer. Alternatively, they could do both, if resources permit.
This would still be fairly decentralized, although I suppose that someone might prefer the model of each server being it's own unit of decentralization. If an indexer, or a set of indexers, aren't functioning properly, pick another one / set. I dunno.