I'm sorry Cleo didn't work out.
Mourning a loss is difficult for both pets and people. It takes time. I've had both dogs and cats go through the loss of a person in the family as well as the loss of another pet--and it does take time, but adjustment does occur.
I think what Buddy is doing sounds fairly normal, and it's also a form of separation anxiety--he is, after all, separated from Meagan--which is why he wants to be physically closer to your son, and why it's worse when your son isn't in the house. And I'm sure it will be difficult for him when your son is hospitalized for his surgery.
It's hard to watch a pet go through such distress, particularly because there really isn't much you can do to alleviate it. At times like that I get most concerned about the not eating, so I try tempting the dog with whatever food, generally human food, is the most irresistible to them, and even if they only eat a little of it, it's better than not eating at all. Eventually they will get hungry enough to eat something.
Perhaps, after your son's surgery, he can try getting another puppy, an even younger one, closer to 8 weeks. And it might be a good idea to crate the puppy so it's not moving in on Buddy's turf, or sharing a bed with Buddy's main person. That way, Buddy can adjust to having a new presence in the house without it being another disruptive influence, and he can be allowed to interact with the puppy only for short periods and only in a very limited area of the house.
Dealing with loss is hard, and it does take time. I'm sorry everyone is going through such a rough patch.