Your son and mine have so much in common. 13yo ds was diagnosed with mild autism around age 8. He has come a long way, but many things have been slow to change. He is a complainer, too, and I find that often I have to step back and tell myself, No, I don't like the complaining (and we're told not to in the Bible), but does he maybe need a break right now? (This can happen when we've spent some time on a subject and he's had 'enough.') Or is he just having a hard time transitioning to the next thing? (This kind of complaining occurs when I announce that it's time for _____, and he indicated he doesn't want to do ______.)
Other than trying to figure out what he needs and whether we can/should adapt at the moment, you're right--it is exhausting, constantly trying to keep him a "happy camper." It's a balancing act, teaching him that life isn't always a bed of roses vs. avoiding meltdowns. I'm really thinking of switching around our school day, since my girls are somewhat better at working independently and they keep complaints to a minimum.
Kids on the autism spectrum just flat-out have difficulty with anything that makes them feel as though they are not in control of their environment or themselves. My son has just recently (in the past two years) gotten used to playing with much younger kids, and he actually finds it quite nice to act as a big brother to them. It just sort of happened itself over time. He couldn't tolerate much noise, so we sit near the back of the church (away from the loud speakers), we find a quieter place for him to sit or wander around when at a large family gathering, and we do what we can to get everyone to use inside voices to a fault at home. (Tough, because my dad is hard of hearing and he lives with us.)
My son likes checklists (well, until he fails to earn a check one day), so charts are good for him, and I will decide on a reward ahead of time, maybe writing it on the chart or including a picture of it. However, the learning curve is much different for him, so after the time allowed on a chart, we will sometimes take a brief break, then I ask him if he honestly has been doing what we worked on. If we agree that it needs more work (which it usually does), we do another chart with another reward. (Hint: don't get too grand with rewards in case you have to work on this habit over 4 or 5 charts!) Then, we just start with another chart. I always remind him that this time, it's going much more smoothly because he's gotten better since the first chart and tell him that we'll get there soon.
It's not unusual for a habit (such as daily brushing of teeth) to take him months longer to develop than my neuro-typical girls. That's just the way it is. For that reason, I often choose a different habit for him to work on so he's not comparing and asking why the girls don't have to do a chart for "x" anymore.
The other thing I have discovered over time is that it's better not to contend with him while he's expressing his frustration or anger. I just end up looking ridiculous as I try to talk over him, keep starting over with my mini-lecture, or keep insisting that he stop yelling/interrupting/complaining/whatever else he's doing. I may be "the boss," but that doesn't mean I can "flip a switch" to get him to stop and be compliant. So, I usually either stand by and calmly say, "When you're done arguing, I'll talk to you about it," or I just walk away and talk to him a little later. This is hard for my oldest to understand ("Why don't you punish him? Punish him now!"), but she's beginning to see how futile it is to bump heads with him, so to speak.
Also, I was told by our pastor's wife to pray for my kids while they are sleeping. I either stand outside their bedroom doors and quietly pray, or it they are sound asleep, I'll actually go into the room to pray. This is very helpful with my son because, as is often the case with autism, he doesn't like to be held or touched a lot (he does give me hugs, but they are quick and still a bit stiff), and when he's upset, he rails against being prayed for. So, I pray Scripture verses about healing ("....by Whose stripes, you were healed....") while he's asleep.