Well, I have a solution that works. I gave up on the FTP task. Instead, I create a batch file on the FTP server. I have shared out the folder where the FTP client resides (i.e., WinSCP). The batch file gets called by an Execute Process task in the package. The whole thing works as a job.
This didn't work for me before because I had failed to share out the folder where the FTP client was. Actually, I was trying to "pushd" into the FTP server, then run the batch file. I kept encountering errors with the "pushd" so just gave up that strategy.
The batch file resembles:
"\\myFTPServer\Putty\WinSCP.exe" /script = "\\myFTPServer\temp\Myscript.sc"
The script file resembles:
option batch on
option confirm off
open ftp://UserName:Password@FTPServer:21
put "\\SomeNetworklocation\TheFile.csv"
close
My advice to SSIS developers trying to get the FTP to work as a job is give up on the FTP task and create a batch file.