I'd imagine the a twenty foot long serpent with the ability to fly wouldn't have a problem with a human riding it, at least regarding the weight, and sensitivity. Rather, it's more likely due to fact the it's a incredibly violent Pokemon, and as such, would more likely than not either kill or severely maim anyone who got too close.
I have to agree, weight probably isn't the culprit there. I always figured that Gyarados is unable to carry a human on its back because it simply refuses to fly very high at all, or possibly it will not fly for long distances over solid ground. Being a water type, it would likely have a natural aversion to anything that would dry it out, such as flying over warm earth or heading up to where the wind can quickly dry it out. So while it could travel through a desert inside its pokeball, coming out only for battles, without any adverse effects, it could not/would not fly over that same desert even without a trainer on its back.
Though the fact that Gyarados is referred to as "the atrocious pokemon" and is commonly regarded as having a horrible temper also probably plays a part. If Gyarados were real, I might trust one to carry me through nice, soft, buoyant water where a temper tantrum would only result in me getting wet. A temper tantrum high up in the air would have a rather different, more permanent effect on me.
But I've always found the ability of small birds, like Murkrow, to fly humans all around the land to be far more confusing than the Gyarados problem. If the small pokemon in question has psychic abilities, like Mew, it makes sense since it would be able to levitate its trainer to fly with it. But Murkrow? Unless there's a special power in a flying-type's feathers that works something like fairy dust in Peter Pan, I'm at a loss to see how they're able to carry hefty children around so easily.