I say do 5 primaries per Tuesday for 11 consecutive weeks. Divide the states into 5 groups by regions of country and take one per each group each week. Rotate so each state gets a chance each year to be first.
What regions would we use? They would need to be of equal in the number of states, which makes it difficult. Some regions, such as the Northeast, have many states that are relatively small geographically, while others, such as the Great Plains, have a few, large states.
I'll make an attempt at dividing the country into 5 regions:
Northeast:
Maine
New Hampshire
Vermont
Massachusetts
Rhode Island
Connecticut
New York
New Jersey
Delaware
Maryland
(District of Columbia)*
Midwest:
Pennsylvania
West Virginia
Ohio
Kentucky
Indiana
Michigan
Illinois
Iowa
Wisconsin
Minnesota
South:
Virginia
North Carolina
South Carolina
Georgia
Florida
Alabama
Tennessee
Mississippi
Louisiana
Arkansas
Plains and Mountains:
Texas
Oklahoma
Kansas
Nebraska
South Dakota
North Dakota
Montana
Wyoming
Utah
Idaho
West and Southwest:
Colorado
New Mexico
Arizona
Nevada
California
Oregon
Washington
Alaska
Hawaii
*Floats in the calendar attached to Maryland. Will always hold their primary the same date as Maryland.
American Samoa, the US Virgin Islands, Guam, and Democrats Abroad each have votes in the DNC but not the RNC. The best, if rather unfair, solution would be for them to always vote last, given that they do not vote in the general election anyway.
Some of these groupings are very artificial (Midwest being the most notable for the inclusions of KY, WV and PA), but they need to each have 10 states.