FTP requires two connections. The initial connection (control connection) is established when the FTP client connects to the FTP server. The established connection negotiates the details of the data connection where the files are transfered.
FileZilla uses some additional logic when the negotiated data connection address is "unroutable". FileZilla attempts to connect to the same address as the initial connection. Camel FTP (which is what QIE utilizes) attempts to use the "unroutable", and times out.
The resolution is to configure the FTP server to report the correct external address, instead of an unreachable internal address.
As an example, this is how you would configure a FileZilla FTP Server,
1. Go to Edit > Settings > Passive mode settings.
2. Select "Use the following IP", and put your static public IP address
3. Keep the box checked to "Don't use external IP for local connections".
Here is an IIS 8.5 FTP server example: