You could use a dd-wrt compatible router, configure it for PPTP or OpenVPN server, and connect it behind his primary router, WAN to LAN, respectively.
[your primary router (192.168.99.x)]<-- internet -->[his primary router (192.168.1.x)](lan)<-- wire -->(wan)[dd-wrt router (10.0.0.x)]
Note that you MUST use the WAN port of the dd-wrt router because the vpn server only listens on the WAN interface. And that means the network behind the dd-wrt router must be different from the primary router. IOW, if his primary router is 192.168.1.x, the dd-wrt router would have to be say, 10.0.0.x. And of course, your own network would have to be different from both of them (which is why I made yours 192.168.99.x in my example).
Depending on your VPN client configuration, you may have to add a static route on the client side so it can find the remote primary network (192.168.1.x). Obviously that won’t be necessary if your VPN client is configured to always use the remote VPN server as its gateway; it will automatically find the 192.168.1.x network. But I’m assuming that won’t be likely in this case, that you intend to only access his remote network for his devices, not internet access. So static routing would be a necessity.
Assuming your vpn client IP was 10.0.0.99,
route –p add 192.168.1.0 mask 255.255.255.0 10.0.0.99
It doesn’t have to be a fancy dd-wrt router either. It doesn’t even need to support wireless. Just anything that can support the standard generic dd-wrt builds (4MB) or better (standard generic for pptp, vpn generic for openvpn). All you’re doing is leveraging the fact that the router is a micro-computer and supports a vpn server, then patching it into the network like any other network device. The only tricky part is that the router only listens on the WAN interface. Had you developed your own Linux solution, you could have implemented the vpn server on the LAN interface and dropped yourself directly on the remote network. Having to use the WAN interface of the router requires the additional step of setting up the network behind it and crossing the WAN into that remote network.
At least that’s one way to do it.