Just remove all the calls to al_set_target_bitmap, draw directly to the backbuffer.
For each time through the main loop, here's what you should do:
Check if each key you care about is pressed, update the coordinates of p1 and p2 based on that.
Clear the screen.
Draw the bitmaps at their new positions.
In other words, don't do 2, 3, and 4 until number 1 is done and you are ready to draw the complete new frame.
I recommend you read about timers and events and use them instead of what you're doing now, though. But first get it working.