Yes, addresses are a huge anonymity problem. You can still use things like PO boxes, but it is illegal for someone to recieve packages on behalf of another person without verifying their identity.
There are easy illegal solutions, for example, your friend could give a false name and trick an ignorant stranger into accepting packages for them. Or your friend could ask you to mail a gift to the address of an empty lot or to a stranger's address, and then "steal" their own package off of the other person's property.
But the best legal solution I've found is using Amazon lockers. Ask your friend to tell you the general area where they live (EG. city, state...) and then order an Amazon product to an Amazon locker near them. The only real limit to this is that you would only be able to send your friends Amazon products.
What do you think?