Sounds like the easiest way to solve the problem you describe and play multiplayer Zelda Four Swords Adventure over the internet (without modifying the code itself) is for the "server" (Gamecube game) and the client (the Gameboy Advance console) to be physically closeby and then stream the (emulated) GBA and (emulated) Gamecube video output framebuffer across the internet using something like the SteamLink so that the 100ms of latency would not cause the Link Cable to timeout.