I've seen colored moon halos often enough to hazard a guess. The multi-color effect is based on light refraction, IE rainbows are an illusion and not a physical object. But also, the angle at which you view the refracted light changes how it looks since the refraction can and will vary based on viewing angle. Moon halos are often fully round because the light is being refracted through atmospheric haze, and at the center is the moon. *does quick web search* Here's a some nice pics:
http://www.lovethesepics.com/2011/08/rare-rainbows-in-the-dark-24-pics/
Pic #5 is interesting since the reflection in the lake lets the viewer see the same rainbow from two slightly different angles.
#14 is a case of haze above a breaking wave creating a refraction effect.
15, 16, 21, 23 may be a similar phenomena. Each is a roundish multi-colored effect centered on the moon. Atmospheric haze causes the light to get refracted and creates the visual effects. 15 and 16 have particularly chaotic effects due to the severity of the variations in the haze layer. But the principle is the same.
The explanation for why the rainbow effect isn't a straight one-way color progression is simple. It can't be. It's not a single refractor, but millions or billions of tiny refractors. You see whatever bits of light get refracted to your eyes.