Have you ever successfully done FTP over Wifi tim? Or does anyone know anyone who has?
No. I have an ethernet shield only. Normally, the transport is not a problem. I use fiber-optic, wireless, and CAT5 on some connections and they work fine. The transport layer is supposed to be transparent to the protocol, and on my systems, it is.
That does not mean the wifi shield does not have limitations. I have not looked at the actual hardware on the shield. The manufacturer wants me to register to get the datasheet, but I get enough spam mail now, and don't need any more advertising. I wanted to check if it had multiple sockets available like the w5100. The w5100 has 4, so this is not a problem for it, but may affect the wifi.
Network speed should not be a problem. I inserted Serial.println("Packet") and delay() statements into the loop to test that, and there was no problem if the delay was less than about 10 seconds.
edit: This appears to be where your code fails. This is the first send attempt on the command port after the data port is opened, so I guess the wifi shield may have a problem with multiple sockets open simultaneously.
I do use wireless devices to connect my ethernet shield to the internet. This is my fav.http://routerboard.com/RB433UAH
It not only provides wireless, but also usb power AND a way to connect to the serial monitor remotely through a ssh connection.