Public CAs usually limit the number of SANs you can put on a certificate based on the type (and price) of the certificate. I once had to generate a certificate with about 100 SANs (don't ask) from a Windows CA and it worked perfectly. At the time I was not able to find a documented limit.
I'm still looking for a reference, but I thought I just saw something while reading up on ISA SP1 about 100 entries? I don't know if a limit is certificate specific or an universal, RFC-defined limit.