That would certainly account for most of the "surprising" combat results that I've trying to get grips with. And indeed a sIG 33 can certainly ruin your day. Have you find that to happen as well to assault guns?
Results with AFV's involved normally seem more reasonable, especially with some quality AFV's that have a good main gun. The defending mortars might still do a number on the accompanying infantry, though. StuG casualties are generally pretty low and they provide decent support, like most medium/heavy gun AFV's.
EDIT: How does the range close during tactical combat? I think it starts at 3000 yards and then starts diminishing. Perhaps the fire and maneuver model should be sampled at intervals which are more fair to heavy weapons.
I don't know the precise formula for how the range closes, but it depends in part on the type of terrain and the type of forces involved and even though the range might close to, say, 125 meters that doesn't mean that all combat in that particular segment is at that range. One of the reasons why the Germans lose at least one PaK 36 in most battles regardless of how good the result is seems to be that there's always something firing at it even as the range closes (the AT gun stays at a few hundred meters from the enemy infantry, but heavy weapons still try to target it).
Perhaps one option would be to lower medium and heavy mortar accuracy to 100 (120mm mortars are now at 250, 50mm's are at 50 and ~80mm's are at 150)
Artillery should definitely be firing much more often than mortars, just because of range constraints. Unless f.e. a Division is actually being overrun, only part of the mortars would be able to be used at any one time. If this is not the case, Artillery should at least be much more effective. Lower mortar accuracy and increase Artillery accuracy might be a workaround.
Are any of the Devs looking at this?