It's possible but tricky, I doubt your average home router will have the flexibility you need to do it.
In the rest of this post I will assume your routers are generic linux boxes. The principles will likely apply on other platforms but I do not know specifics.
In iptables "DNAT" rules are used to change the destination of connections. Iptables will happilly change the destination to anything you want.
This works great when the targets of your DNAT rule are on a LAN behind the router implementing the DNAT. DNAT changes the destination on the initial packet of the connectoin, sets up a connection tracking entry and passes the packet on to the destination. The reply comes back through the same router, matches the conection tracking entry, gets reverse-translated and sent back to the source. The source accepts the packet and communication continues.
It doesn't work so great when the target of your DNAT rule is on a different network somewhere on the internet. DNAT changes the destination on the initial packet and passes the packet back out to your ISP.
If your ISP is following best practices their ingress filtering drops the packet on the floor at this point, but lets pretend they don't.
The packet gets delivered to the server, which replies to it and sends the reply to the client. Unfortunately the reply packet never hits the router implementing DNAT and never gets reverse-translated. So the client gets a packet with an unexpected source address which it promptly drops on the floor.
So how do we get around this?
One option is that in addition to passing the packet through a DNAT rule we also pass it through a SNAT/MASQUERADE rule. This will avoid problems with ISP ingress filtering and will bring the replies back to the NAT box so reverse-translations can be applied. Unfortunately it will also hide the IP of the client from the server making abuse control virtually impossible.
The other option is to combine a VPN with policy routing. Rather than sending the packets from NAT box to server over the open Internet we send them over a VPN. Then on the server policy routing is used so that when a packet comes in over the VPN replies to that packet are also sent over the VPN.