I'm not a g-whiz g-code guy, but if you can attach the g-code file, I'll take a look at it to see if there's something strange in the slicer output. Consider also to use another slicer (PrusaSlicer is a good one) to see if you get the same results. If you do, it's hardware, if not, it's slicer.