Here is another way to look at my steps comment.....
Looking at your G-code, your x and y movements are in the range of 0.0001" or 0.1 thou
Which to me is really impressive....
so if your step resolution is ~0.049, you are getting two steps for every commanded movement
Hence half'ing your microstep resolution will align your steps to your commanded motion. (and improving your stepper motor torque)
You also need to consider backlash (you cannot really eliminate it.... just reduce it to the point that it does not affect what you are doing..... in order for a ballscrew (nut or anything) to slide over a leadscrew, it requires tolerance to provide slip and movement.... hence you always have some small amount of backlash)
0.1 thou of movement is impressive, and I know nothing about what you're machining or your required surface finish or detailing, but what does 1 thou of cutting accuracy do for you (0.0254mm).... have you tried it, is it noticeable? it will again 1/2 your microstep resolution and increase your available stepper motor torque.
I think at that sort of resolution of cut I would also be considering if there is any movement in spindle, guide rails etc
Only you know your machine and I am by no means an expert, only you know your machine and these are just things to consider.
___________________________________________________
(Tweakie, thanks very much for the guidance, I'll take note and stop myself perpetuating the myth..... I think it makes a little difference, I went from 50uStep resolution to 10uStep on my plasma and the torque improve dramatically (AM882H drives) .... I considered the step resolution of what I was asking the machine to really do..... with a blunt instrument (plasma cutter) and the finish I was getting and my backlash).