I was exactly where you were at almost exactly the same age (stuck at 17:30 forever, it seemed), and I eventually did break 17, so I hope my insight helps.
Firstly, if your PR is 17:30 and training your butt off with very little change, you need to know that sub-17 is a pretty big difference than 17:30. For some it's not, but you are likely at a similar talent level as I - my PRs were effortless until I got to the low 18s, then I had to do some work to see 17:30. At that point, it took a LOT of effort to see sub-17:20, sub-17:15, and so on. I was reaching the limiting returns area, and hard to train a lot to get a small gain. It looks like you are there as well. So to look at your next goal as sub-17 is possibly biting off a bit too much for now. Look at is as an ultimate, long-term goal, but train for 17:19 right now.
When I read through the thread and saw your 10k PR, it was a shock. I was doing that as a tempo when I was running mid-17 for 5k. You have terrible endurance as the length of run increases. Do you have a habit of ending training runs weakly, particularly long ones? It's a bad habit. A lot of faster runners I train with occasionally like to throw in a hard mile at the end of a 10 miler, or more, and I've used this with positive results.
I agree with the negative feedback you are getting for the 200s on the track. Not a total waste of time, but not in your best interest right now.
I have tried a lot of different things for 5k, and what worked for me was pretty simple - about 60-70 miles a week with a long-ish run the day after the key workouts. This got me to sub-17. All easy/long runs at the time were at 7:00 - 7:10-ish pace (4:25 - 4:30/km), which worked for me. I know that's supposed to be a little fast for someone at that level, and I'm not arguing that. This is what worked for me:
M - 6-8 miles easy
T - 5 to 6x1km at track at goal pace. 5km warm up and cool down. No changes other than decreasing the rest interval each week. I knew I was ready when I could get by with 20-30 seconds jog rest. Try starting at 90 seconds rest and moving down each week by 15 seconds. If you cant complete the workout, add more rest and revise the plan to take a bit more time.
W - 12-13 miles easy, pick up at end if feeling good
T - 6-8 miles easy
F - 6-8 miles easy
S - Sometimes a standard tempo, but usually a 1 hour progression run (enjoyed them more). Tried to give all-out race effort in the last 10-15 min.
S - 15-16 miles easy, give or take
The Tuesday intervals really were the key for me in seeing progress, and having patience. It may have been better to change up the distances, but using the same w/o with decreasing rest each week enabled me to see what was impossible become reality week by week, and this motivated me very much.
Best of luck.