When you use a lot of ephemeral keys, then you need to worry about network level privacy and timing attacks by the relay. You might have to use a new tor circuit for each pubkey, some time staggering, and random used keys as cover traffic.
Isn't this better than SimpleX Chat's protocol?
1. There wouldn't even be a queue to correlate messages on. Each message comes from a different random key.
2. Send and receive payloads can be separated in time (the receiver sees the DM immediately, but the sender logs the message, or better, a group of messages, in the future or the past inside Nostr relays).
3. As we add more private event kinds, the anonymity set increases. The public won't even know what is a DM and what's not.
4. Yes, anyone will see that you are receiving "things". But GiftWraps can wrap Noise (events that don't mean anything and should be discarded upon receipt). No one will know what's noise and what's an actual DM.
https://github.com/nostr-protocol/nips/pull/468#issuecomment-1646858226
Discussion
Same risk as using SimpleChat with the same outgoing IP for all contacts, right? The relay can bundle your messages/queues.