Hi.
I created a sketch to manage 2 motors , lights, buzzer, GROVE display via HC-05. I use Arduino Uno and Arduino Motor shield. If I feed Arduino Uno via the USB connection to the laptop, everything works correctly. If I do not use the laptop but feed Arduino motor shield with a 9 Volt battery, the lights, the buzzer, the GROVE display work but if I send the command to run the motors after a few seconds HC-05 stops working and starts flashing.
Which 9V battery are you using?
If it's a square battery for a smoke detector, it's of little use.
Also, using the two motors with USB power from a laptop is not very desirable.
I found the stall current of that motor is about 1A, so you need a power supply that capable supply nearly 2A of current to the total two motors.
Perhaps you need a battery for RC model.
Or, if your motor can got enough torque or speed at 5V, you may be able to use "PowerBank" for mobile phones.
Probably the motor is rated at 12V, and at 5V the stall current is also significantly reduced so there is no problem with a standard power bank.
Also multiple AA batteries are good, but the motor is probably rated at 12V, so it's likely that you'll need to have at least six in series for enough power, which can be quite heavy and big...
Anyway, the your 9V battery doesn't have at all the power to run the motor, so there's no doubt that you can't use it.