I'm not sure if the 'mirror' attribute also mirrors your action points. The alternative would be to turn mirror off and manually create the opposite angle animations and position the action point manually for each frame. I'm not 100% sure how it works. Do you have 'Auto Rotate' set in the platform behaviour? Not sure if that makes a difference either.
Only other alternative I can think of is maybe have two points, let's say 'WeaponL' and 'WeaponR' then have events such as Sprite: Angle = 0 -> Set Gun position to point WeaponR, and Sprite: Angle = 180 -> Set Gun position to point WeaponL