First comes a trip to the vet to rule out any health issues that could be causing this. An exam and urinalysis at a minimum, but blood work would also be good. Health problems can lead to behavioural changes so you want to make sure that there's nothing causing this.
If he gets a clean bill of health there are several things you can do. First, try adding in some additional litter boxes. The general rule is one more than the number of cats in your house. Try experimenting with different styles of boxes as well as different litters. One of mine refuses to use anything but a fine grained, clumping litter.
There is a product called Feliway that can help reduce anxiety levels. It can be purchased in a spray or a diffuser, the diffuser covers roughly 700 sq ft. I used a spray when my cat was having issues, I found it effective to spray the areas he was urinating on as well as his favourite sleeping spots.
Finally, the behavioural drugs. Sometimes a short course of medication is sufficient to get past the anxiety and help your cat settle in to the new living situation. My guy, Simon, went on medication right after we adopted a new dog and also after we moved. After a few weeks of medication we were able to wean him off and haven't had any additional problems.
For the mattress mix 1 cup hydrogen peroxide, 1 tsp baking soda, and 1 drop of dish soap in an open container. Saturate and area that is 3-4x the size of the original stain. Let dry. You may need to repeat.