Thanks for the great report.
Though I don't have any factual back-up, I believe that the 21 min. age rule is actually correct. Before I turned 21 it was really a gamble to get in every time I flew NW or CO. I was never ID'd wearing a suit or a blazer, but sometimes when I was wearing casual clothing. Sometimes they said that they let me in as an exception (usually CO where the bar was serviced and not self-serve), sometimes they refused entry.
Nevertheless the agent was rude and unprofessional in your case. At least she should have explained the rule to you in a friendly way. I believe NW has to pay high fines when they get caught letting in minors.