Blood sugar spikes from high GI foods - a problem?
During a short ride you mostly fuel with pure sugars and as simple as possible - so mainly glucose in gels. For longer events you also want more complex sugars that take longer, but still mostly carbs - rice cakes, croissants, sandwiches, musli (granola) bars.
You are correct that you cannot sustain a long ride (a road race) just from the glucose gels, you will get hungry. But it is possible for short two hour or slightly longer events. Professionals in Ski Classics mostly only use energy gels and drinks for the long-distance skiing. Cyclocross events are one hour or less and you won't see any eating during that, just some drinks or perhaps a gel.
It is impossible to overeat when going full gas. Your concern is to give your body enough fuel in frequent small doses.
Large amounts of proteins and especially fats are too difficult to digest during the race, you have them later for dinner.
You were asking for studies and this one should be of interest for you: International society of sports nutrition position stand: nutrient timing
I select just one paragraph:

Extended (&gt; 60 min) bouts of high intensity (&gt; 70% VO2max) exercise
challenge fuel supply and fluid regulation, thus carbohydrate should
be consumed at a rate of ~30–60 g of carbohydrate/h in a 6–8%
carbohydrate-electrolyte solution (6–12 fluid ounces) every 10–15 min
throughout the entire exercise bout, particularly in those exercise
bouts that span beyond 70 min. When carbohydrate delivery is
inadequate, adding protein may help increase performance, ameliorate
muscle damage, promote euglycemia and facilitate glycogen
re-synthesis.

They recommend every 10-15 minutes.
It is supported in the article body:

For example, Fielding and colleagues [50] required cyclists to ingest
the same dose of carbohydrate every 30 min or every 60 min over the
course of a four-hour exercise bout. When carbohydrate was ingested
more frequently, performance was improved.