As Ranieri pointed out, we don't know if you need 10/100/1gig or half/full duplex. We also don't know what kind of CPU you are using. And we don't know how many of these you want to make (I'm assuming 50+, for various reasons). So this answer is sort of a stab in the dark, but...
There are four different approaches you can take. 1. Use a passive hub. 2. Use a 3-port switch chip. 3. Use a CPU that has two Ethernet ports on it. Or 4. forget the 2-port requirement and use commercially available Ethernet switches instead.
I've done enough PCB's with Ethernet to tell you that a passive hub isn't all that great. It might work in some one-off situations, but for a real product they stink. They will limit network bandwidth in weird ways, limit your max cable length, etc.
There are several companies that make Ethernet switch chips. Micrel is one of them, and more importantly Digikey has them in stock. I haven't read the datasheets to know now suitable they are, but it looks promising.
Using a CPU with two embedded Ethernet controllers can be a good option, and would be the option that most companies would choose. But for this to work well, the CPU should be at least a 32-bits, like an ARM or PowerPC. The CPU needs to be running a reasonable TCP/IP stack and be setup to route packets between the two Ethernet controllers. Companies like AMCC and Freescale make these. TI has one on their roadmap, although I don't know if it's available yet.
So I don't know which one will be a good solution for you. My guess is that you'll have to choose between the lesser of three evils, but that's frequently the way engineering works.