The only thing that appears to be different (between working and not working) is how the power is supplied.
If you are powering the motors from the 5V (arduino VCC pin), then it may be the onboard regulator shutting down because you are drawing too much current. i.e.
- When using the USB charger, you are supplying 5V directly.
- But when using the RAW pin (with the battery pack) you are then using the onboard regulator to create 5V.
You can check that voltage with the multimeter.
Perhaps trying using an external regulator (like a 7805) which can deliver up to 1amp, and supply that 5V to the arduino.
But essentially, don't power the motors from the arduino VCC pin.