Delay in processing data sent to Arduino using HC-06 from Android app

Yep, I knew that what you wanted is a continuous movement as long as the down event is raised, but what stops the movement on your Arduino code is the up event, i.e. when it receives the zero, because the down event is not continuously generated (therefore it sends only once the relevant movement command).
Your sequence of buttons seem to implement a joystick behaviour. The following link shows how to do it:

I see that you continue to use the parseint() function. If it works for you, it's fine, but remember that it suffers of a timeout that, if too short can interrupt your receiving, if too long can introduce a lag in the commands handling.
Anyway thanks for having shared your solution, so also other users can benefit of that.
Rgds.