Pues hombre...usar las funciones de ftp que tiene php te vale de poco, porque para ello tendrías que tener el archivo ya en el servidor, y si te da problemas con el método normal, pues ya me entiendes

Otra alternativa sería hacerlo desde javascript o similar en el cliente, lo cual, a todas luces, no es nada bueno. Vale si tienes posibilidad de acceso anónimo al ftp, porque obviamente no vas a poner el password en javascript. Por otra parte, nadie te aseguro que el cliente pueda acceder por ftp a algún sitio. O también, que se dediquen a meterte mierda (perdón por la expresión, pero es la más adecuada) en la ftp.
La solución que yo veo es que en el cliente se vaya fragmentando el archivo y se vaya mandando por el método normal de forma iterativa y automática. Lo que no sé es si javascript podrá (tendrá permisos) para acceder al disco duro del cliente. No debería por cuestiones de seguridad, así como tampoco puede un applet.
¿Alguien tiene alguna idea?