Or, alternatively, is there any good way to transfer a large number of small files between different folders and between different servers? My filesystem is ext4.
Rsync over ssh is something I use on a regular basis. It preserves file permissions, symlinks, etc., when used with the --archive option:
rsync -av /mnt/data <server>:/mnt
This example copies the local directory /mnt/data and its contents to a remote server inside /mnt. It invokes ssh to set up the connection. No rsync deamondaemon is needed on either side of the wire.
This operation can also be performed between 2 local directories, or from remote to local.