Its the age!! A lot of trainers make references to the "terrible twos" or to "puberty/teenagers" because it is very common to have a pup that is well trained suddenly start pushing all the boundaries. So it's not just you!
I would recommend umbilical training when it comes to having a pulling dog - wear the leash around your waist in the house for 30 mins a day, while you do whatever you usually would. Then on walks, wear the leash around your waist, and when she pulls, change direction. Cross the street, walk the other way, whatever. It'll make it harder to keep to a "route" but dogs like variety anyway! In the park, run with her a little, and go around obstacles with the leash around your waist - lots of turns, directional changes etc - you should be running fast enough to be ahead of her. Go around trees, over park benches, zig zags... Umbilical trains the dog to keep watching you, and respond to your movements - it is a real miracle worker!