My labradors are all trained to the gun - and have done reasonably well at working tests so I'll try and add a bit of help here.
For the stop whistle and maintaining it with distractions it's 'just' practice which will improve it. I would establish at what distance you are able to control her at a stop with the distractions you're trying to eliminate - the joggers, other dogs, cyclists - whether it be 2 feet from you or 20 and work to improve it inch by inch. So, as mimimu says - take her somewhere you know you'll find the distractions, start with what you know she can do and increase the distance inch by inch. Try really hard not to set her up for a fall by getting the distance too big, too fast.
I'm afraid I don't agree with thrown treats for a gundog, simply because it would encourage mine to move from the spot I want them to stay on! I walk to them with the praise (or treat) and if they inch forwards or move I take them back to where they were meant to be, sit them up again and walk off. Then back to them and praise if they've stayed put.
An extension of the stop whistle training is the next step you're after. To stop whilst they've been sent out for something (be it a tennis ball retrieve or recall). It is the logical progression with a working dog. If I send my girls for a retrieve, I expect them to stop at the whistle and to take direction in the form of hand signals (left, right and back). Although natural hunting ability is a priceless skill, there are occasions where you don't want the dog's hunting skills to take over - eg if I've sent out 2 dogs at the same time for 2 different birds or dummies; it's not up to them which one they pick, it's up to me. I send them in a certain direction and if they deviate, it's the stop whistle and direction. I can direct my dogs up to a distance of about half a mile.
With the tennis ball retrieve, do you sit her up next to you and ask her to wait while you throw and then send?
Try sitting her up, making her to wait and then walk out to place a tennis ball a short distance from you. Walk back to her and then send for the retrieve. Usually, this retrieve is at a slower pace than chasing a thrown ball and will give you a better chance to stop her mid retrieve. To start with, stop her literally just after you've sent her, then again, build up the distance.
If you do that say 10 times, try to stop her no more than once or twice and keep it very random. You don't want her to learn or expect the stop otherwise she will become very hesitant on the retrieve which is A Bad Thing.
There is nothing in the world for me which beats the sight of my dogs doing what they're bred for or the feeling that comes from working with them. It's marvellous
.
You've done really well to get a good stop trained - and if you and she enjoy it ...... 