Charizard was unable to learn Fly through HM02 in Red and Blue. This was changed starting with Yellow, making it possible to still get a Charizard with Fly in the original games by trading one from a later version.
Source: Bulbapedia/ Charizard
Maybe it was just a mistake on their part. I mean, Red & Blue were their FIRST games. They were bound to make mistakes or simple overlooks.