Earlier quoted context omitted.
Isn't it possible to use the relay to initiate a direct connection between the two clients, instead of transferring the data itself?
Sometimes. The VoIP world has been dealing with this for years. The process of finding and connecting the clients is called signaling, and that typically requires a shared relay. The signaling can contain information on how the clients can be reached directly. In SIP, typically each client will use a STUN server to discover their public IPs, and a process call ICE allows the clients to iteratively try those candidate…
I suppose you could try that, and fall back on full data relaying when it doesn't work. Should save a lot of bandwidth.
Of course, that might be a lot of work to implement, not saying it's easy!