I think the fact that larger programs (like UNC) lose players every year to the NBA draft plays a part in it as well.
Teams like Wichita State and George Mason have guys that have played together for several seasons, so they are able to play as a unit better. A team like UNC that loses starters every year has lots of guys playing together for the first season.
This leads to a lot of parity in college basketball.
You're right.... but what I would like to see is more consistency in the college game, not parity. What you have now are high school kids jumping to the NBA. With the new rules, they can go pro after only one year of college, which will still result in a bunch of unskilled players going after the bucks.
The NBA should adopt MLB's policy, which states that kids can get drafted out of high school, but if they choose to go to college, they must wait three years before being able to be drafted again. This will give kids a choice, and also let them know that if they want to play college ball, they must commit to it for a certain period of time. It will also give college coaches the security knowing if they can snag a top recruit, they will have him for at least three years.
If that policy was in place today, Duke would easily win the national title, with Chris Duhon and Luol Deng as juniors.