I was giving some more thought to your question.
Could it be that in your attack animation the attacker translates forward?
Because you're using collision detection and the engine takes care of that re: entity translation. However, if your attacker animation translates forward in addition to the engine's attempts to compensate it's translation coordinates, your attacker will step into the collision zone. Since two solid entities can't overlap, the engine bumps back the translation to compensate. You could redo the animation so the character's center always remains about the same and take care of any forward translation using code instead.
Press F11 twice to show the collision zones and play your animation in slow motion. If it's an unfixable problem, you simply disable collision temporarily during those wonky frames.