Stepper Motor Step Accuracy Issues

you have a pulse width of 800 microsecs (when 10 is probably sufficient) AND you have also an interval after the pulse of 800 µsecs.

I put it as 800microsecs as motor wont move in loaded condition. Torque provided vs speed of steps inverse relation.
10usecs wont even turn my motor.

The code you suggested does is almost similar to what I had posted for delayTime = 20ms.

And I am still not clear how to interpret your tables.

Linear encoder starts at position labelled B(which is Zero) then moves to position A(which should actually be 5mm or 10mm depending on number of steps)
So lets Sl No. 3 in the vertical motor picture, it moves to 4.990mm when it should have moved 5.000mm, then when it goes back same number of steps it reaches 0.002mm.

If its 2000 steps this error is large. It should be 10.000mm but I am getting in the range 9.907-9.915mm. Error of around 0.085mm.