I have set up this exact same thing in my office under RedHat 9 on an old PC. It's free, stable, and has everything built in that you need to do it.
Basically, have like you described- two NICs, one hooked into your network at large and another going to a hub/switch. Set up IP Masquerading (PM me if you want details and I'll post how to do it), set each PC on the local/small network an IP address, and you're good to go.

Nobody on the other side of the routing PC knows the traffic isn't coming from the routing PC itself.