Your best bet would be to use an oscilloscope to probe the step, dir, and enable lines to understand what is happening (if you don't have access to one, perhaps you have a friend who does).
The loss of holding torque when you change direction could mean that you have the enable terminal of the driver incorrectly hooked up to the dir signal from the Arduino - rechecking your wiring might be a good idea - you could monitor the enable voltage with a multimeter to see whether that may be the case.