Do you have a green or brown Hero class (Archer or Warden)?
If so, your problem is likely the result of a known bug where a Hero’s class magic bonus when using weapons of that class’s color are not always applied. For example, if you have a +5 magic bonus on the Warden class, all brown weapons should have an additional 5 attack, but sometimes the bonus mysteriously goes away, which would explain the 7 damage you are seeing. You might possibly have a troop with a Blessed trait that sometimes randomly boosts the attack of all allies by +2, which would explain the 9 damage.
Anyway, the bug has been reported a number of times, but I see that even after the most recent console patch, it was still being reported as an issue. Some people have said that removing and then re-adding your weapon may reenable the bonus. Viewing the weapon immediately prior to every battle may solve the issue as well. But bottom line, it’s a bug that needs to be fixed.