Race time vs training time for running ( specifically 5k)

I'm a competitive runner. By competitive I mean that I run 6 min miles on average and have been known to run sub 6. However for training purposes I run much slower to get my 50 miles a week. I probably run an 8 min mile pace when training. Sometimes 9 min pace just so I can hammer out my 6-10 miles a day. My last race I ran a 7:10 pace for 3.2 miles but I had a really bad cold. I just ran the exact same pace today outside on a really hard course ( not a race but training run) . I'm so discouraged that my "time " is the exact same despite all my speed work and training. I know that since I don't use gun timing and I rarely track my time accurately that I could potentially be much faster. From my training it is safe to assume an average pace of 7:00-7:15. Although I know for sure I can run a 6:15 for at least two miles should I want to. I also know I can run 5:30 for one mile. I have tested those distances. My question is in a race situation with a semi- easy course ( roads and no real significant hills) if it's possible for me to take two or so minutes off my race time to get a 20:00 5k?? How much do your times decrease or Increase in a race compared to normal running??