@sarahjamielewis I am reminded of the old quote "I haven't got a solution but I certainly admire the problem".
I remember how searching gnutella was both crazy slow and unreliable, with two consecutive searches producing different results.
I remember when the coinbros started complaining that having the entire ledger locally was way too big and computationally expensive, but relying on servers to say who had what was untrustworthy...
Lots of existing work in this space. Few if any solutions.