The reason for the enemy's rapid movement is sub-pixel positioning.
When the enemy hits the player's X coordinate - let's say 500 - it doesn't stop EXACTLY on the 500th pixel and might stop at, say, 500.27546373 or something. This causes it to think that it is to the right of the player, so it will start to move left, at which point it will stop at 499.37383926 for example. Then, it thinks it is to the left of the player... and repeat... :)