If you have a few months to train to knock 2 minutes off (aim to train to get under 12 so that 12:38 feels easy AF on the day) then that should be plenty of time. You are running 9 minute miles at the moment and you want to bump that down to run 8 minute miles so what you need to do is practice running at an 8 minute mile pace.
Try running 400m at 8 minute mile pace (once round a 400m track in 2 minutes- if you dont have access to a track, measure out a 0.25 mile route on google maps or mapmyrun.com) then rest for a minute or two, run 400m(equivelent to 0.25miles) again and repeat until you feel like youve had a good workout- aim to build up to doing this for half an hour (approx 10-12 times)
You might need to start out slower (although im sure youre already capable of doing a few 400s at 8 min pace already) and build up from there. Add volume each week.
It would also help if you practiced running faster than 8 minute mile pace (say 8x200 @ 7.5 minute mile pace).
At the same time as working on speed, you also need to work on stamina. To do this, run 3 miles without stopping 3x a week (or build up to this) at whatever pace you can muster (around 10-11 minute miles atm). Once a week (or every other week) run the 1.5 mile as fast as you can (time trial) to monitor improvement).
A 10 day training cycle should look like this:
Monday: 3 miles in 30-35 minutes
Tuesday: 6 x 0.25 miles (with 1-2min of rest In between) @ 8 minute mile pace (build up to doing 12x0.25)
Wed: 3 miles in 30-35 minutes
Thursday: 8-10 x 200m @ 7-7.5 minute mile pace
Friday: 3 miles in 30-35 minutes
Saturday: rest or cross train(cycle or swim light intensity)
Sunday: 1.5 mile time trail (as fast as possible)
Monday: 2 miles in 23 minites (easy recovery run)
Tuesday: 3 miles in 30-35 minutes
Wednesday: 3 x 1 mile (with 5 minutes rest inbetween) at 8.5 minute per mile pace