I can never remember how to do this off the top of my head, so here goes. First, tar and untar the directory:
tar cvzf foo.tar.gz /public_html // tar
tar xvzf foo.tar.gz /directory // extract
Use scp to move files between servers. Login to the server where the tarball is located and use the -P flag for the port of the destination server:
scp -P 1234 foo.tar.gz user@