How can I back-up an external drive while preserving attributes, folder creation date and showing progress?
Just after I posted this question I found a solution.

I noticed that the rsync: get_xattr_names errors all had one thing in common: the files that raised the error where always ._ files. 

I read that ._ files are used to store information that would go into a HFS+ extended attribute. As I'm copying between HFS+ drives I figured I don't need these files.

So I added an --exclude argument to my rsync command which excludes all filenames that start with ._

rsync --exclude="._*" --recursive --info=progress2 -hhh --xattrs --times --crtimes /Volumes/origin/ /Volumes/destination


The command:


Filters ._ files beforehand (--exclude="._*"), preventing get_xattr_names errors.
Preserves the folder creation dates via the --times --crtimes argument.  
Preserves Finder colour labels via the --xattrs argument.  
Shows progress in a human readable format via the --info=progress2 -hhh argument. 
(Added bonus: preserves custom folder icons as well, via the --xattrs argument)