They can't do that. No more than a business that sells alcohol could say you have to be 25 or whatever BS they want to make up. Federal law is 18 to buy a long gun. As soon as these companies refuse to sell to a 20 year old they are committing age discrimination. They are violating the civil rights of the purchaser.
Can an 18 year-old possess a rifle if he cant buy one?
You hit the nail on the head
Or bake a cake?:)