One big problem with P2P is that it reveals the IP address of the other party.
The legal conflation you're actually homing in on is we conflate technical terminals with their human users. We've been doing it for years, and it shows no sign of slowing down.
OTOH, many email providers do include the sender's IP, so it doesn't seem like a deal-breaker.
You realize that hidden services don't require exit nodes?