As far as I'm aware, almost all TLDs allow for two-letter domain names, such as "is.gd" and "az.com". Why doesn't the .US TLD allow the same?
You're actually wrong that they aren't accepted; they're just not available to you.
You might be tempted to argue that the two-letter combination you want doesn't correspond to a state, but that's only true right now. If you registered such a theoretical domain and in the future a state joined the union whose abbreviation conflicted with it, you can be pretty sure you'd be losing that fight.