I charted out the efficiency levels as well (So sloooow at work this week).
The water tower is in fact the most efficient while leveling up, by quite a bit. However, the final level of water tower is the only level in the game where efficiency actually
drops when you go up. The scribbly lines over the tower indicate to me that the designer meant to remove the tower but never did, as it's not balanced at all. Because of this I don't even count that last level of water tower.
The leaf tower, while not nearly as efficient while it's leveling up, is the most efficient tower by far once you max it out. It underperforms the water tower at every level but the max, where it then beats out even the 'proper' max water level by a huge margin.
The only problem is that leaf towers are so inefficient at lower levels that they can't keep up with the pace of the attacking army; you can't get them leveled fast enough. So what I do is build a single efficient-during-leveling water tower to hold off the army to provide time for my leaf towers to level up. One water tower in the middle of the map leveled up to the 'large whisker' level can provide enough time to max out a few leaf towers. Then I continue maxing out leaf towers from there, one at a time. No sense in leveling multiple leaf towers at once due to their low efficiency at all levels but the max.
At the very end when things are getting tight, I drop down a few mid-level water towers, which are as efficient as I can manage at the time. That provides an extra wave or two of survival. I'm sure this stage of the fight can be tweaked alot for more survival.
I managed to break my record with this and hit 77 waves.
EDIT: Fire towers, while slightly more efficient than water, don't work well due to their very short range; you end up needing more of them to do the same job that one water or leaf can do because of it. And forget the big towers, their efficiency is abysmal, and also goes down when you upgrade them.