Or even just make Monaco a part-invitational non-WC race - Maybe the top 8 teams from the previous season, plus the rest to be made up by invite, although the criteria for selection would need some thinking.
Or how about borrowing an idea from NASCAR and the All-Star race at Charlotte?
Say, have all race winning teams from the past 5 years, plus any race winning drivers still racing. Recently retired (within 3 years) WC's could enter as a replacement or 3rd driver
The remainder could then enter a 'race off', practice/qualifying on Thursday am, 40 lap race on Thursday pm. The first 8 stay on for the main event, the rest go home.
Single practice and qualifying then takes place Saturday, with the race on Sunday.
This year's line-up would have had (I think)
McLaren - LH, HK
Ferrari - FM, KR
Renault - FA, NPJ
BMW - RK, NH
Brawn (courtesy of JB and RB race wins)
Torro Rosso - SB, SB
Williams - NR, KN
Trulli
Vettel
Fisichella
Schumacher, Villeneuve and Montoya could have made a one-off return, if they fancied it.