When you run Seatools for DOS, what does it show you as the maximum Logical Block Address?
Seagate built into many of their HDD's a system to limit the disk's usable size for compatibility with older hardware. You can use Seatools for DOS to re-specify the maximum LBA address it will use, and that will be stored in the HDD's firmware. From then on the whole world believes it is this new smaller size. For example, I installed a 160 GB HDD from Seagate in an older system that cannot be upgraded to the newer "48-bit LBA Support" system, so it had to be limited to the 137 GB max size. I used Seatools to specify that its maximum Logical Block number is 268,435,456 blocks. At 512 bytes per sector, that comes to 137,438,953,472 bytes and no hardware or software can force that disk to go beyond that.
As part of this system, in the same area of Seatools, Seagate built in an undo tool: you can tell it to restore the hard drive to its original true full capacity, whatever that is. For a 2 TB drive it is probably around 4,294,967,296 Logical Blocks, which could give you 2,199,023,255,552 bytes max.
So, use Seatools' utility for this and look closely at what it says it has for the maximum number of Logical Blocks. It should be around 4 billion. If it's set to more like 2 billion, that would explain less than 1 TB. Assuming the disk is empty and you are not trying to use any of its data, use the Seatools utility to restore its full capacity.
If that is not the issue, it's back to looking at what Windows is doing.