Why can't I copy a drive in full to another drive? I am trying to copy one drive to another (both external) - from a 1TB to an empty 4TB drive.

I reformatted the 4TB drive, and here is its information:

$ sudo newfs_exfat -N /dev/disk3
Reformatting existing ExFAT volume
Partition offset : 0 sectors (0 bytes)
Volume size      : 7813969920 sectors (4000752599040 bytes)
Bytes per sector : 512
Bytes per cluster: 16384
FAT offset       : 32768 sectors (16777216 bytes)
# FAT sectors    : 1933312
Number of FATs   : 1
Cluster offset   : 1966080 sectors (1006632960 bytes)
# Clusters       : 244125120
Volume Serial #  : 5d2afd28
Bitmap start     : 2
Bitmap file size : 30515640
Upcase start     : 1865
Upcase file size : 5836
Root start       : 1866


Here is the information from the 1TB drive:

$ sudo newfs_exfat -N /dev/disk4
Partition offset : 0 sectors (0 bytes)
Volume size      : 1953458176 sectors (1000170586112 bytes)
Bytes per sector : 512
Bytes per cluster: 131072
FAT offset       : 2048 sectors (1048576 bytes)
# FAT sectors    : 61440
Number of FATs   : 1
Cluster offset   : 63488 sectors (32505856 bytes)
# Clusters       : 7630448
Volume Serial #  : 5d406cb7
Bitmap start     : 2
Bitmap file size : 953806
Upcase start     : 10
Upcase file size : 5836
Root start       : 11


It seems like the cluster size is smaller in the 4TB drive (after my reformatting), yet, the contents from the 1TB drive do not fit into the 4TB drive, and I get "disk out of space" on a Terminal where I copy the files with cp -r.

Any ideas why?
and I get "disk out of space" on a Terminal where I copy the files with cp -r.

I suggest using the ditto command.  You can use ditto to copy directory to directory. It includes all nested directory. No idea how links would work. 

Would the source disk be timemachine disk?  It uses hardlinks which result in a copy of the data being made for each hardlink. 

Same would go for another disk with lots of links. fyi: The Unix link command is ln.