I just figured out the issue! I'm not sure why I didn't thought of this earlier on..
The problem was because I have set the bullet speed for the up motion to 300+ while the down motion is 200+. So obviously when I keep tapping consecutively to try and float the character, it's not going to float well because the speed for both the up and down motion is different....
So my new question is.. how do I make use of the touch function to make the game detect when I am tapping consecutively, it would set the bullet speed to match the down motion at 200+?