Hola, no me había fijado en que querías establecer 2 servidores FTP escuchando en puertos diferentes.
Lo primero, quiero rectificar mi anterior respuesta, pues el puerto 20 no hay que "abrirlo" (es decir, generar una redirección NAT) sino solamente asegurarse de que no está bloqueado por un cortafuegos.
En cuanto a la conexión en puertos no estándar, algunos cortafuegos (en este caso no el tuyo, sino el del cliente) presuponen que el servidor enviará datos por el puerto de control - 1, aunque eso nunca se sabe, y puede ser ignorada completamente a no ser que trabaje en modo pasivo.
¿Has debugeado alguna de las conexiones? ¿En qué momento fallan? ¿Fallan ambos métodos, activo y pasivo? Cuéntanos qué has mirado hasta ahora.