The limiting factor on the size of NDEF messages is the capacity of the tag in most cases.
For example, it is possible in most operating systems to have a file that is 2GB in size. However, you cannot have a 2GB file on a 128MB drive, because the drive cannot hold 2GB. It does not matter that the OS limit is 2GB -- the drive physically cannot hold anything near that limit.
In this respect, you can think of an NFC tag as being a very very very very very small drive. The number of bytes supported by an NFC tag varies by tag, but frequently is 1KB or less.