Honest opinion though is that you're running too many workouts, too close together. There are many ways to view running, but I'm a pretty firm believer in muscle memory. In order to get to the next level, you've got to create new memories as I put it. For you this means, less frequent workouts, but more intense stimulus. I think the number 1 mistake a lot of distance runners make it getting so stuck to a schedule and the "Well I did this run at this pace therefore this should happen."
Also working on mental toughness will be good. Don't work on mental toughness with harder runs, faster pace etc. This is actually NOT what makes a runner tough. What makes a runner tough? The ability to handle sport specific pain. Therefore, I like to do what are called "effort runs." These are basically all out bouts where the goal isn't hitting a time, but running as hard and as uncomfortable as you can for as long as you can. Best way to do it is on a course you don't know the distances of. Only time you'd bring a watch is to time how long you can deal with the intensity of the pain. It's kinda of tricky workout to do because you've got to be honest with how hard your pushing yourself and DON'T use the watch to gauge your effort.
Have you ever seen those guys in races who run the first mile of a race and then die? I think running intervals and trying to hit a time can train the body to do exactly that. You run a 5 min mile and then rest and, when a race comes by, you're at a disadvantage because you've essentially trained yourself to rest at a mile. It's the old time is king mentality. My main point is merely to switch things up. Don't get me wrong, the watch has it's place. Seriously though, don't let the time tell what your effort is. Try out some "effort runs" and build your mental toughness. That way, in a race, your judging the race by feel (and you'll be tougher than your opponents).
Just some food for thought.