Not many birds have high special attacks though, so Aeroblast wouldn't have been massively useful on them anyway.
Way too many Pokemon to list learn Aerial Ace which is also better than Fly, and amazingly can hit Pokemon who are underground or flying.
Quite a few Pokemon learn Air Slash too.
Lots of non flying types learn Bounce.
There are very few flying types that don't learn a better flying type move than Fly.
I didn't know about most of those moves... It really shows I haven't played much Pokémon since the 2nd gen (and apparently my 40+ hours in Ruby haven't made me much wiser in the matter either

)
As to the matter at hand: I should dig up my copies of Red & Gold to check which Mon I used as HM bitches...
Though I still remember me using either Fearow or Farfatch'd, as they can both learn Fly and Cut, and Slowpoke could learn both Surf and Strength. I don't know who had Flash in the old days...
In Ruby I'm obviously using Linoone for most of the HM's, and Skarmory as it can learn quite a few HM's as well - and a Steel type can be quite handy, actually.
Pelipper would be my second choice, as he's one of the few Flying/Water types - which is a great combo for HM purposes.
I also had a Vibrava with Flash, Dig and Secret Power - which, if I'm not mistaken, is the name for the move you need to open up 'secret bases'.