Well, she certainly can jump square as evidenced in that second pic. She is kinda hurling herself over it rather than using her hind end. Overall conditioning can help to some degree. More muscle is always good. I don't know how often you go out hacking, but it does wonders.
Gymnastics will accomplish 2 big things for her. And one big one for you. For her, it will teach her to go forward or back herself off from fences without any help from you to get a safe distance, and it will also get her to jump with impulsion from behind rather than speed. For you, it will take finding the distance out of the equation and get you trusting her to find better spots on her own while you just keep out of her way.
One big trick I found out with gymnastics is, you need something every 9', even if it is just a ground pole. I don't know how many other horses cheat, but if I set up a one stride at 18', and don't place a pole 9' to force him to just take one stride, he will add or subtract at will thereby defeating the exercise. Bounces and square oxers are your friend. Put them together and they are fantastic. The reason square oxers are good is, horses naturally back off them, so very little chance for the horse choosing a deep spot. A great exercise to start with is, bounce, two very low vertical or even ground poles 9' apart, then a one stride 18' to a square oxer. If your horse has a long canter stride, make it 19'. Set it up in the middle of your ring, either trot or canter in, and change direction after the oxer each time and come back around and repeat.
There are a zillion ways you can set up grids. All are fun and get your horse thinking. Just remember increments of 9' and you should be close on striding. Have fun!
You just have to see your distance...you don't have to like it.