Is this 20Tb packaged in a small number of large files (like video, monster database) or millions of smaller files?
If lots of small files I would go with rsync for restartability or a piped tar stream for efficiency (one network connection for the lot, start again from the beginning if it fails)
tar -cf - * | ( cd newhome; tar -xf - )
remote folder must be mounted.
Could you directly attach the new array with a different interface? Local rsync doesn't use ssh so you remove that failure point. Yes, Firewire 800 is slower than gigabit ethernet but you cannot load ethernet to 100% - it might be faster by firewire. FYI you can also network firewire if the boxes are close enough. Add the interface in system preferences -> network.