How do I alter the complete url, not just the path, of nodes?
InboundPathProcessorInterface can't do it, that's an incoming request, it has no way of redirecting to another site, because that's what you have to do.

Implement something similar to redirect.module: a request subscriber that sets a redirect response.

For outbound processing, that definitely works, but you have to set the right options. Have a look at how \Drupal\language\Plugin\LanguageNegotiation\LanguageNegotiationUrl::processOutbound() sets the language domain.