For endurance and eventually speed increase, 25 minutes, six days a week would be better than 50 minutes 2-3x per week. The best advice I've ever seen for running is: Run. Run lots. Mostly slow, sometimes fast.
One of the best programs I've seen for running comes from a triathlon and cross country coach that I've talked with a few times, and it's 3:2:1. Say your longest run is 30 minutes. You should have 3 runs of 10 minutes, 2 runs of 20 minutes and one run of 30 minutes, with one rest day. The generally accepted way is short, medium, short, medium, short, long, rest day. So since you can already do 50 minutes fairly easily at an 8ish min/mile pace, I would feel that you should be able to do short runs of 25, medium of 50 and throw in the long run of 75 minutes, of which you will either need to slow your pace down some, or walk a bit here and there.
This gives you a very solid aerobic base, doesn't overstress you and allows time for recovery. Speed comes from consistency, and the day in, day out repetition and build.
With 7 months to prepare, I would spend the next 2 months doing nothing but working the 3:2:1 program and getting your long run into the 2 hour range. Once you are there, for the next 2 months you can work on adding some things like strides in your medium length runs (Strides are things like 30 second periods where you pick up the pace substantially, repeat 8 or 9 times during the run), and brief higher pace periods.
That should take you to about 3 months out, and your long run should be in the 2-2.5 hour range. You shouldn't need to do more than that, although at this point you could try a 20 mile run (Although at 2.5 hours, you are already close to 20 miles at an 8min/mile pace). You don't need to do too many of the 20 mile attempts (maybe 1 or 2, mostly to work on nutrition and hydration), you're already doing enough weekly distance. For the next 2 months, for one of your medium days, do a dedicated speed workout, such as 1-2 mile warmup, 8x800m substantially faster than your normal running pace, and 1-2 mile cooldown. In between the 800's, get enough rest that you can make the next 800 interval. So if you are at a 8:00/mile workout pace, your 800's you should try to make in 3:00-3:30, rather than 4:00 pace. Keep up with some of the strides and pickup type additions to your workout.
About a month out from the race, start a slow, progressive taper, so that you come into the race rested. Unfortunately, tapering is somewhat of an art form and very individual dependent, so nobody can really tell you what is best for you.
It does sound counterintuitive, but the greatest speed increases will come from consistency, not always pushing the pace. Most amateurs make the mistake of pushing too hard on their easy days, and not hard enough on their hard days.
Oh, and I'm not sure what your height/weight is, but if you have any excess weight to shed, the general rule of thumb that I've seen borne out over the years is that you get around 3 seconds per mile faster for every pound less that you weigh (Taking into consideration that every person has a point at which weight loss actually hinders performance).