Hi.
You do not need seperate imagepoints for mirrored or non mirrored.
It should work with just one imagepoint.
This is what i did. Keep in mind it looks a bit more complex than it should be, as its part of a combo attack.
Quick explanation of the steps.
1: If attack is pressed set the instance variable of the character.
2: If the variable is set, then only can it play the attack animation
3: If the attack animation is playing, then set the helper to the imagepoint of your character
4: If the animation is finished playing set the helper to position 0,0. (i also found if you destroy the helper its gone forever.) Then set animation to idle.
The bug you speak of of the imagepoint i think is related to the way you set up your events as i experience similar issues.
Try the above method using only 1 imagepoint. Only set the imagepoint while the animation is playing like i did.
Also make sure your sprite is scaled weird as this can cause issues when mirroring it.
Hope this helps