FATX uses three bytes to address each cluster. Three bytes can store two to power of twenty four (2^24) different values, so that's 16,777,215 clusters tops.
Hence the maximum partition size is tied to your cluster size. The default of 16kb (2^14 bytes) multiplies out to 274,877,906,944 bytes (2^38).
Divide that by a gigabyte (2^30) and the final figure is 256 (2^8) gb.
Now, there's nothing stopping you from attempting to create a partition larger then 256gb using 16kb clusters. Catch is, as soon as you actually attempt to put more then that amount of data on there, you run out of addressing space, the file system overflows, and whoops! The file index table just got overwritten...
I dunno if this bug also exists in FAT32, but I've never heard it mentioned. So why do they bother to change the cluster size for larger drives in that case?
Well, the file index table keeps track of clusters, but the smaller your clusters are, the more of the things you have - and hence the bigger your index has to be. Attempting to index 2tb worth of data using half kilobyte sized clusters would require 4gb, while a 32kb cluster size reduces that figure to just 64mb.
I think NTFS likes to use 4kb clusters regardless, which is fair enough. There comes a point where drive efficiency will be taking a bigger hit due to huge clusters then it'll be gaining from having a small index.