Short gearing does not automatically mean poor highway fuel economy. Engine size, throttle position, aerodynamics and torque curve all play roles. If the gearing is too tall for a low torque engine, you'll have to downshift at the slightest grade. Driving one or two gears down all the time helps? Nope. People criticize the Corolla for not having a fifth speed and revving a bit high on the highway, but the car has no problem achieving 5.0L/100km on the highway. If gearing were all it took, all cars would tick along at idle at 100.
You're right that there are many factors at play. However, the fact that, all else being equal, taller gearing leads to better fuel economy is true in most cases, generally as long as the engine is turning at over 1000 RPMs. The reason is that engines tend to be more efficient if the throttle is more open, the more you throttle the entry of gas, the worse the efficiency. Since power is dependent on RPM, this means that the lower the RPM, the more open the throttle needs to be to generate the same power, and the more efficient the engine is.
Now, that's a bit of a simplification, the truth is that you need a Brake Specific Fuel Consumption graph to find out the truth. This is a graph that gives the BSFC rating (the amount of fuel burnt by power unit generated) depending on the RPM (x-axis) and the amount of torque generated (lb-ft). Each engine has its own graph, but they're all a bit the same, the best BSFC tends to be near the limit of the torque output of the engine around 2000 to 3000 RPMs.
Here's an example, first posted on GMinsidenews's forum that showcases why lower RPMs mean better fuel economy. The graph is of the Saturn 1.9L DOHC engine. The red line you can see is the amount of torque needed to generate 20 hp (hp=torque times RPM divided by 5252), so at 3500 RPM, you need to throttle the engine to generate around 30 lb-ft of torque, at 1500 RPM, you must generate around 70 lb-ft of torque to do so.
As you can see, the optimal efficiency is at around 1200 RPM, with a BSFC of maybe 280-285 (lower is better). If you want, let's compare efficiency at 2000 RPM versus 3000 RPM. At 2000 RPM, it's around 325 g/kWh, at 3000 RPM, it's around 350 g/kWh. This means that this particular engine will have a 7% lower fuel consumption rate at 2000 RPM than at 3000 RPM while generating a constant 20 hp. That means if the fuel consumption was of 6 l/100 Km at 3000 RPM, it would be around 5,6 l/100 Km at 2000 RPM. If you'd find a way to make the engine turn at 1200 RPM instead, the fuel consumption would be 20% better than at 3000 RPM, so 4,8 l/100 Km. Of course, at that point any slight incline or gust of wind will result in the vehicle being unable to maintain its speed.
All the other factors you mentioned affect the amount of horsepower required to maintain speed or to increase it.
![](http://img5.imageshack.us/img5/7708/bsfcsaturn20hp.jpg)
Now, does this graph means that you're better off driving with the pedal to the floor for efficiency? Well, yes and no. When accelerating, it would be theoretically better to drive in wide-open-throttle (WOT) while keeping engine RPMs low, however in automatics, the transmission is just going to get the engine RPM higher because it understands the pedal-to-the-metal as a demand for more power, not efficiency, so it will shift in a gear giving more power, which will make the car less efficient. Even if you're in a manual, WOT in top gear will make you drive at insane speeds on the highway, which will increase air resistance and so the amount of power needed to maintain speed which will increase fuel consumption.
So the advice for fuel economy is: accelerate with an open throttle but in the highest gear possible, but stop accelerating when you reach a relatively low speed.