It took most of the day, but I've re-architected the combat system, and I think it's much more stable now.
It looks like the big issue was poor bookkeeping of creatures as they exited and entered battles. Things were pretty stable when battles were few and far between. However, when battles started happening close to each other, and combatants moved between them, things got ugly.
For example, a creature might leave one battle, enter another, and then both battles are trying to handle that creature simultaneously. Or, a battle might take place in one hex, but another hex thinks the same battle is over there, and both hexes are reporting battle info.
Like I said, ugly :)
So I've rewritten most of the guts of the combat system, and things are behaving much more rationally now. Combat should still work pretty much as before, just minus the weirdness we've been seeing.
I've still got some wrinkles to iron out, so there won't be a build uploaded tonight. However, I should hopefully be back into minor bug-fixing and content creation again tomorrow.
Have a good one!