As far as the maximum number of resources you can have, if you're asking about limits you're probably doing something wrong. ;-) Seriously, 30K resources in a single DLL? But with that being said, the maximum number of resources varies by resource type, IIRC, although I can't find anything in MSDN documentation that specifies any limits.
For the second (file size limit), it would be the same file size limit that applies to other files on the specific version of Windows. Win95, for instance, with FAT32 has a 4 GiB file size limit; NTFS, exFAT, and UDF file systems have file size limits of 2^64 -1
There's an MSDN article comparing File System Functionality that might help (it's where I got the file size limit information).
To your third question (performance differences), of course there is; iterating a resource table (or multiple tables) that has 30K items will obviously take longer than doing the same with less than 1K items. There's also more overhead for file I/O with a larger file, although the OS file caching would help mitigate that factor.