You were very sharp in catching my attempt to get past the complications for quantum magnetic moments. For an electron orbital moment with the smallest non-zero value, there are actually three states with definite values of the component of the magnetic moment along the field axis. The values are -1, 0, and +1 times a natural unit of magnetic moment, the Bohr magneton. So the 0 is the in-between value. The next higher possible total angular momentum allows values of -2, -1, 0, +1, +2 for that component. Etc. These orbital moments always have an odd number of possible distinct values for one component. The electron spin gives two possible values (-1/2 and +1/2). I can't off-hand think of a simple very short explanation, but these issues are discussed in almost any first-year quantum book.
The numbers of different energy values generally do not change further after the introduction of a small field. Increasing the field just increases the energy splits between them. You can see why that would be so rather easily in your simple case of a spin with just two possible values of the magnetic moment on the field axis.
In more complicated cases, with dissimilar orbital states (e.g. ones that start at different energies even in zero field) the pattern of how the energies change as a function of applied field becomes more complicated. The general rule that the number of different possible energy values doesn't change once the field isn't zero remains, however.
I realize that this answer doesn't really give the explanations, but perhaps you can follow up again. I suspect that when you think about it the explanation of the last part will be sort of obvious. The first part, about the possible discrete values of angular momentum, probably requires more reading.
(published on 08/25/11)