Answering the question as asked, yes, there is a file size limit on any file system. For FAT/FAT32 partitions with normal sector/cluster sizes, it's about 4GB. For NTFS (again, with normal sector/cluster sizes), it varies--I've seen claims that Windows XP and higher can theoretically handle files as large as 16TB or even larger; I'll update this in a few more years when hard drive technology reaches the point we can test that theory.. :-D
So, answering what the OP really meant to ask.. Any issues with your *.vdi are more likely related to you virtual machine software and/or any supplementary software you use to manage the file rather than with the file system or OS. (I run WinXP Pro 32-bit/SP3 with an Oracle VirtualBox installation with a little over 150GB virtual disk image/file, far more than the 15-30GB the OP has issues with, and have had no issues with such a large disk image file.)
Also, note that any issues might even be related to disk failure or available/corrupted RAM memory--Managing a virtual disk requires keeping various data about the disk in RAM for "quick" access (quick here means not having to wait for 10-15 seconds while the VM searches the virtual disk for even a single-byte sized file..), and most issues I've seen with VM's are related to those data structures getting corrupted in RAM (and then the corrupted data written back out to the disk file!)--So backup often!