I went to UVA and ran on the team about 5 years ago. It is true that the school has a general policy that students graduate in 4 years, but there are definitely a few ways to get around the system.
For example, the undergrad business school is a two year program. I know runners who were accepted after their third year, thus were able to stay five years in undergrad. This is definitely not an easy way to go about being an undergrad for five years as McIntire is a great business program, but it is an example.
Another runner friend of mine took a semester off do to a family issue. He was able to stay an extra year to complete his undergraduate degree.
Finally, a more common scenario that a number of teammates used is just staying a 9th semester. In these cases, the runner had a fifth year of XC but not track, so they were able to prolong their undergrad education by a semester.
It's probably also important to point out that a student athlete doesn't necessarily need to take 12 credits to stay
eligible. In the last semester of competition, they can take as few credits as necessary for their degree. So, if I need 120 to graduate and enter my last semester with 117, I'd only need to take 3 credits to maintain eligibility.