I think the States should be divided into 5 regions of 10 states each. On ten consecutive Tuesdays, starting the first one in February, one state in each region holds a primary. The order of the states within each region is randomly chosen each primary season.
I think this would end early campaigning, as you never know quite where the first primaries will be, and force the candidates to appeal to more diverse, national interests, instead of things like corn ethanol subsidies and retiree pensions concerns in traditional "early" states.
Actually, I like your idea better. But IA and NH should still go first by tradition. So that means 5 regions with 9 or 10 states in them.
That's not a bad solution. It would certainly correct the skewed influence of Iowa and New Hampshire. Reminds me of an old joke: A reporter asks a New Hampshire resident which candidate he supports for president. He answers, "Well, I suppose I can't rightly say. I haven't even met some of them yet."