Do all mirrored pairs in a RAID 10 configuration need to be homogeneous in size?

If any disk in your array is larger than the array size of the other disks, the excess space cannot be allocated to the array.

You can however use the excess space in another array, if the excess space is the same size or larger as the additional array.

So in short, yes, you are correct: Only half the space on the 2TB disks will be used. BUT, you can use that remaining 1TB per disk to create a new RAID1 array on that space so that its space does not go wasted.

The limiting factor will be the size of the smallest disk. That will determine the size of the smallest of the two mirrors, which will then limit the space available for striping. So yes you will be limited to 2TB total size for the one array.