There are versions of the VNM theorem that allow infinitely many possible outcomes, but they either
1) require additional continuity assumptions so strong that they force your utility function to be bounded
or
2) they apply only to some subset of the possible lotteries (i.e. there will be some lotteries for which your agent is not obliged to define a utility).
I might look it up on the original paper when I have time.
The original statement and proof given by VNM are messy and complicated. They have since been neatened up a lot. If you have access to it, try "Follmer H., and Schied A., Stochastic Finance: An Introduction in Discrete Time, de Gruyter, Berlin, 2004"
EDIT: It's online.
See also Kreps, Notes on the Theory of Choice. Note that one of these two restrictions are required in order to specifically prevent infinite expected utility. So if a lottery spits out infinite expected utility, you broke something in the VNM axioms.
For anyone who's interested, a quick and dirty explanation is that the preference relation is primitive, and we're trying to come up with an index (a utility function) that reproduces the preference relation. In the case of certainty, we want a function U:O->R where O is the outcome space and R is the real...
If it's worth saying, but not worth its own post (even in Discussion), then it goes here.