It's had to say where he is right now in his crisis. Only he may know what's going on w/him and why he's doing the things he's doing.
Please, please stop trying to figure out what phase he's in. He's in crisis and until he's completed his crisis, his emotions will be all over the place. One minute up, the next down. One minute he wants to be w/you and your son and the next he doesn't. Learn to accept him for who he is right now, which is possibly a teenager trying to grow up to be 21.
He crisis clock is slow while your clock is fast. He will get through is crisis at his own pace and when he's faced and dealt w/his issues. Until that time...he's still baking in the MLC oven.
Keep the focus on you and your son. If your h is doing something nice, recognize him for this and keep your expectations at zero.
Sit quietly, the answers will reveal themselves when you least expect them to. The past is gone, the present is a gift and you need to focus on today, allow the future to reveal itself when it is ready.