Nis Hi, sorry I wasn't clear enough. You mentioned "use ftp to download and then upload them again" by which I think you mean using an intermediate machine as a stepping stone. What I'm suggesting is different, which is to run sftp in the cloud
If you log in to the shell account which you want to move the app to, you will find that it has sftp installed.
Using sftp on the server as a means of copying the files from one user account to another means no downloading and no uploading, everything happens on the one server.
Even for a bazillion files it should be relatively instantaneous. (And of course you can speed it up to sub-instantaneous by doing gzip and tar first).