Weight has been a main reason for the loss of efficiency. Infact in Car and Driver Csaba Csere had given that point. Increased weight means increased drag force to overcome and desptie of the engine technology progressing, the weight has practically counterbalanced the gains in fuel economy.
Main weight cuprits are the airbags, bigger tires, electronics (a manual window is less heavier than one touch up and down window) plus cars are tending to grow bigger.
If you look at the 1990 Accord EX for e.g. it weighed about 2900 lbs or roughly 300 pounds less than the 2007 Accord, about 150 lbs more than 2007 Civic. It gave 24/30 mpg compared to that 2007 Accord which gives 26/34. If you saddle up the current technology with that body weight I am sure it will end up being 30/40 or equivalent to 2007 civic which does give 30/38. Comparing 1990 Accord with 2007 Accord is like apples with oranges. Instead if you compare it with 2007 Civic, the dimensions and power to weight ratio are almost within each other. Thus there has been about a 20 percent gain fuel efficiency based on the advancement of technology, not bad. The only thing is if you want the efficiency you only have to lower your standards and go for a smaller car, which is dimensionally as big as the older "bigger" car, as my example shows.
I love the ideas of ABS stability control, etc. But I have always argued the idea of Airbags, especially a bunch of them.