For starters how long have you had this amazon? There's a lot that can be concluded knowing whether this is a bird you've had for 4 years or 4 days.
is he mean? Or is he defending himself? Not to be confrontational but how many stories can you read on this forum alone of the "big mean vicious bird who attacks everyone" suddenly jumping into the arms of a caring person? If you approach them like they're mean then yeah they probably will be ready to strike because they can sense you are tense. Just an idea of maybe approaching with a different outlook on the behavior that rather than biting for the sake of biting there is most likely a reason.
Sailboats is right (though I slightly alter the statement), it isn't his fault he was made to bite by some outside stimuli. Be it fear, frustration, overzealous play or in some cases biting you to make you run away from a perceived threat. There's so many reasons a bird will bite but for the sole act of inflicting pain is going to be the least likely reason.
How much do you know of this bird? Like I say you haven't stated how long you've had him, was he given to you recently by someone? If so he could have been abused by a previous owner and now be terrified of people making ready to bite because he thinks he's about to get hit by someone.
Also remember that he is 4 years old which is when sexual maturity begins and we are currently in the middle of baby making season so he has a pile of hormones flooding his system most likely making him go crazy, think of how moody humans get during the teen years.
The advice I can give is merely, only touch his head and neck nowhere else, make sure his dark night time is upped to 12 or 14 hours a night, cut all fatty foods, re-arrange his cage, give him some new foraging toys, get him flying and exercising to burn off his energy, when company comes over at first keep him in the cage until he is okay taking a treat through the cage bars, reinforce his step up training with treats and praise. Potentially use a stick to get him to perch on to avoid getting jiggy with your arm. Also make sure to learn his body language, he is giving you signs he's going to bite, I've never seen or heard of an amazon who doesn't telegraph a bite with a big warning sign first