If at first you don't succeed . . .
Basic rule of FlyerTalkers (useful in nearly all circumstances):
If the customer service representative (CSR) you're talking with isn't being helpful, politely terminate the call and call again. You'll usually get a new CSR (and if you were polite with the first one, he/she may not have put a note in your file) and the new CSR may be more willing to do what you want.
In this case, you might call National again about the glasses, and if they again talk about a $20 fee, mention that you're a good customer, give your Emerald Aisle number, etc., and see if an exception can be made. Most CSRs have some discretion about waiving fees for good customers, or may be able to get a supervisor to waive it for you.