VPN access with overlapping network addresses

I use OpenVPN to log into a corporate network with a network IP range This works when at home when my LAN's network address is
However, in an Internet Café the LAN network IP is also and when I start the VPN the routes get overwritten and all packets are suddenly lost due to the clash.

The VPN's network address is set by the company and I cannot change it. Also, the Internet Café's LAN is non configurable. I could play with virtual machines or jails on my notebook and use them as routers if necessary.

Do you have any ideas how I could connect to the corporate VPN and communicate with hosts on it as simply as possible? I have looked into this solution but it requires NAT on external routers. I could create a VM and use it as a router, then do a two-sided NAT as suggested in the link. Is there a simpler solution?

@the cafe, before starting the vpn
just route add -host -interface re0
where is the default gw you get from the cafe's dhcp and re0 is your interface
if the most important server on the corporate network has same ip with the cafe's gw you are out of luck