Perhaps how some hotel programs work might be an interesting solution for the airlines.
Consider SPG: You get rewarded for both the stay, and the revenue. To make gold, their lowest elite tier, you need 10 stays or 25 nights. However, your points are directly reflected on your spending (gold gets 3 SPG points per dollar spent).
So, even though you'd be gold and have the same elite perks with 10 stays at the Four Points Des Moines Airport or at the St. Regis in New York, the St. Regis traveler would accrue significantly more points, and thus, better rewards.