OP, remember even if the PDA, ODD stuff fits, it doesn't mean that he's just going to be like this forever. There is a massive massive difference between children with difficult behavioural issues that are unmanaged, and children whose behavioural issues are managed, whatever the cause of those issues. It could be personality, it could be SN, it could be parenting.
I don't think it is necessarily about being disliked if I'm reading you right - it's more about not wanting to be the bad guy? It is hard when you are a lone parent and you have to be the good guy and the bad guy all at once. I certainly find it easier with DH, and it's not one sided, but children obviously don't tend to respond nicely to an adult when they feel angry with them, so instead of having two adults to rotate those roles, you do have to let him feel angry sometimes and then go in and be nice when he is calm. That is hard but it's just how you have to do things.
About intrinsic vs extrinsic rewards. Yes there is a school of thought that extrinsic can turn into intrinsic, this is true and for a lot of things it is about forming habits which is where star charts etc come in handy. I do agree with you - Alfie Kohn? - but find that in practice, I think you have to be really on the ball to keep it up and it's pretty demoralising for children who see other children getting rewarded for stuff and yet they don't? It's confusing. Especially if (like me) you find it easier to express criticism than appreciation! When DS asked me to buy sweets so I could train him to walk nicely like a dog, I realised that I was just fighting a losing battle trying to avoid that. So, yep, we have rewards now. But I still wasn't keen on the star chart idea and wanted to make it broader.
What we are doing now which is working very well is getting DS (6) to earn his privileges through gaining "tickets" (you could use a points system too) by meeting a set of behaviour expectations. The six main expectations (for us) are:
- Be timely - basically not making us late for stuff, not messing around when it's time to go, getting out of the door on time, listening to warnings about how much time is left, being organised and remembering stuff, within reasonable bounds for his age.
- Be respectful - no name calling, when angry can shout at things but not people, using a nice tone of voice when asking for stuff, please/thank you, not being rude and ordering people around, listening to requests (I don't demand immediate obedience but I do expect a polite response, even if it leads to bargaining)
- Respect people's bodies - no hitting, no touching private places, keep doors to bathroom and other people's bedrooms closed, knock for entry (we don't currently have a lock), respect body boundaries ie if somebody says stop, stop, if you accidentally see somebody naked (etc) say "Sorry!" and walk away/close the door.
- Eating nicely - sitting still at the table, not getting up and wandering around, don't spit or throw food, leaving something if you don't like it without whining or moaning about it being on the plate. We don't expect perfect table manners, but the basics.
- Being helpful - complete a list of daily (small) chores, don't obstruct activities deliberately to be annoying, if someone says "I don't need help" don't barge in and help anyway, if asked for help, help if you can. (It's OK to say "I can't because...")
- Keep yourself and your things clean - brush teeth x2, shower if it's a shower day, wash hands and face when needed, don't pee all over the floor and leave it, tidy up after yourself (again not perfectly, but not leaving huge messes around for others to clean up), empty school lunch box in the kitchen.
You notice how I've set it out as a positive expectation (what I want) and then only followed it up mentally with what I'm not looking for.
It's bloody amazing. Transformative. We don't go on and on at him about stuff. Don't use it as a threat - you're about to lose your ticket for X - but instead I use little phrases like "That isn't very respectful, would you like to try again?" and you can praise very specifically by using the same words. "Thank you for bringing your plate through. It's really helpful when you do that." Don't bargain for tickets. Don't even mention or discuss with him throughout the day which tickets he has or doesn't have. At the end of the day we tell him OK, today you earned X number of tickets for X, Y and Z. (DH insists on telling him which tickets he lost and why, which I think is unhelpful because it's focusing on the bad again, but eh. I only tell him if he asks.) DS' tickets are for screen time, because that is his currency. He is allowed to use up to two tickets for bedtime (if it's not too late) or he can save them for use the next day, so he gets an immediate feedback and a longer term one. There are also extra things he can do for "instant tickets" like try a new food or activity, be extra kind and helpful, finish his chore chart before 4pm, and then any little extra goals we set him. We made the tickets together from card and sticky backed plastic so he has a tangible thing I can give him to hold which is good. You could also use pennies/real money or pieces of pasta or stones in a jar.
I don't think it does lead to him caring only about the reward. If he loses one ticket he doesn't then not care about that for the rest of the day (I think he might if I was using the old language "Well now you've lost out on that" kind of thing). I really think that setting out the expectations like that and then the constant daily reminder of them helps the most of all. He is motivated by the tickets, but of course they will be phased out as he gets older. (He asked me the other day "When I'm 18 and I can drive a car, I might get a ticket for that for doing something new!"
I said when you're 18 and drive a car, won't you care more that you have a car? to which he looked amazed and said "Wooow. I can't wait until I'm 18!")
Sometimes of course he still loses control or lashes out. In those cases we go back to the calming down techniques - removal from situation, into bedroom if necessary, but mostly just reacting immediately to his attitude (almost like puppy training!) - when he's polite and helpful and nice then I try really hard to accommodate his wishes, to do what he asks me to do, to play with him, do little nice extras like let him have money to spend while we're out or that kind of thing, just to let him know I like spending time with him when he is like that. When he's being rude, stroppy, attitudey, or even just too hyperactively silly, then I go back to being bare minimum, I don't do favours for him that he could do himself, I don't play or read with him, he doesn't get given random surprises, I am polite to him, and I certainly don't ignore him or give him the could shoulder just because I'm angry about something he's not doing any more, but I am not going out of my way to be nice. If he's trying to engage me by being stroppy, or hyper, then I tell him to go away, calm down and then try again. That definitely comes with age, but I think I could have introduced it much earlier, like at around 2 or 3 and it would have been easier for him.
I don't know whether this system would have been possible a year ago. So if it's not something which would work for you now, hold onto it for the future perhaps. But I still wanted to share because it has helped so much. I'm finding that it's really positive to be able to say "Hey, I know this is hard for you, but you really did well. I'm proud of you."