I've only been watching road cycling seriously a few years and certainly haven't seen many 1 day races however..
i think the final box hill timings below seem to illustrate quite well the knife edge where the race tilted away from GB
http://www.london2012.com/cycling-road/event/men-road-race/phase=crm012100/doc=detailedresults.html
it shows the established breakaway of 22 riders with a lead of 21s over 11 escapees (canc, sanchez, vino, uran etc) with the peloton just 18s back on them.
it seems to me that GB absolutely had to catch this key move of 11 before they joined up with the breakaway as it created 3 quality team units that would ride cohesively - Swiss (4 riders), Spain (3 riders) and US (3 riders) ie 7+ (fresh) guys willing to ride against the GB/Germans' 7 riders.
What is also noticeable is that at this point all the Germans except Degenkolb were hanging well back and on the replay even he didn't appear do any work on the final ascent or just after.
12 minutes later the escapees had made the junction and it is only about this time you see Germany committing to the chase.
Obviously Germany only wanted to lend just enough support to GB to make sure there is a bunch sprint but with all GB riders too knackered to leadout/position Cav. If they had all been in close attendance and really pushed with GB in the last stages of the ascent and in those vital 12 minutes to catch the 11 escapees would the field have then come back for a bunch sprint as the original breakaway was looking fairly flaky? A big pull from Tony Martin would have been ideal but losing him was a major (or fatal perhaps) blow for GB & Germany. Perhaps GB could also have sacrificed a man to close the gap at this point?
The 3 man Belarus team have been generally overlooked. Kiryienka put in a good shift at the front in the run up to box hill, the only other guy to help out GB, presumably in support of Hutarovich. Kiryienka withdrew after 5 laps but if not perhaps they could been another ally?
Overall it seems to me that GB really weren't too far away from forcing the bunch sprint, possibly just needing to close that 18s gap within that window. Germany just played their hand a bit too late but were hampered without Martin.