Motor oscillates when driven by L293D
This is a case that needs further details, and maybe trials and error but i think the cause could be:


Wiggling motor cause by the PWM. Try to increase PWM frequency on the Arduino. http://playground.arduino.cc/Code/PwmFrequency
Noise on the measured signal. Try to use screened signal cable to the encoders, with ground connected straight to the Arduino GND with as little as possible sheared wire with the motor drivers.
Software "jitter". Make sure to read the encoders with hardware interrupts. http://playground.arduino.cc/Code/Interrupts