This happened to me a TON when I was using WINEQ2, to the point that my melee chars (Bard, Zerk) would end up stuck somewhere far away from camp after a while. It could probably be fixed it in the background FPS or eqplaynice settings, but I just closed WINEQ2 and let MQ2 do the FPS limiting.
I did try some things that reduced the problem before I just closed WINEQ2 - the biggest thing that seemed to trigger it was the character having to TURN. When I positioned my melee characters so that they would only have to run forward to attack the mobs, then set them to !front in the stickmode, they did less turning and were less likely to get stuck in the sidestep loop.