Yes, its not really fair. Back when the voting age was lowered to 18, it was a political play, and that's really all it was. Some states did lower their drinking age to 18 (or 19), but the majority of those who did have since raised it back up to 21.
A large part of the argument for the 18 yr old vote was the draft. After all, if you were being drafted to go and possibly die for you country, you should have a say (vote), right?
BUT, the gun laws were not changed, and even though some drinking age laws were, they have since been changed back. ITs not fair, but it is a fact of life that you are considered adult enough for Uncle Sam to put a machine gun in your hands at age 18, but not adult enough for you to put a handgun (or a beer) in your own hands until you are 21.
There is a loophole, after a fashion, depending on which state you live in. Federal law does not allow under 21 purchase of a handgun from an FFL. It does not prohibit under 21 ownership. State law is the one that either alows or prohibits under 21 ownership. Some states allow purchase from a private party (and ownership) under 21, others do not.
All else being equal (and it almost never is) bigger bullets tend to work better.