Alright I found out what the problem was. Turns out it doesn't count the dragon experience gained when the enemy stack is your own out of control 5000 peasant stack. It has to be an enemy stack. So I made sure my peasant stack died this time and just ran around and avoided a stack of enemy bears.
So I managed to get my pet dragon over 9000 exp this time and he's level 28, while my hero is only level 7. Here is a screenshot:
dragon2.jpg
So now I have fiery phantoms and lava call. This should let me bust past the guards to Montero easy. The only thing is I need 60 rage, but I should be able to get that high by spending a few might runes + items.
We'll see how it goes.