is there some port number that I could open up that would allow it to work freely?
Yes, sort of. Typically you can configure the ports that your FTP server will use for passive mode transfers. Unfortunately, your ftp server software, by default, chooses these ports (numbered > 1024) at random. I don't keep up to date with win32 ftp servers, but I do know that proftpd under *nix allows for "static" configuration of a range of passive ftp ports to allow for a situation like yours where ports need to be forwarded to another host. This is all due to the nature of passive ftp.
Assuming your server software supports that option, you'll also need to make sure that your gateway allows a range of ports to be forwarded. Again, I don't really keep up to date with windows nat software or the various standalone products available, but this is a fairly basic feature that should be supported.
What's wrong with your clients using active ftp?
~bex0rs