When I worked in assisted living my employer was really big on what was called "Edenizing". Where you have a lot of plants and animals for the residents. So we had fish, birds, and two cats. A couple of times there were potential residents who refused to live with the cats either because of allergies or they just hated cats. My boss would not give. We did get one resident who asked her to get rid of the cats because she wanted to live with us but was allergic. My boss told her sorry but the cats stay. So she talked to her DR who gave her Claritan and she never had a problem with the cats. Now this was a lot bigger space then a residential house so she was able to avoid the cats a lot. But your son might want to try Claritan or another non drowsy allergy medicine.
I understand having to corral the kiddos when company is coming. One of my peeves is a begging dog. I don't mind a dog being in the dining room while we're eating but I cannot stand for a dog to beg the whole time we're trying to eat. And I've seen a lot of things posted by pet owners saying things like, "My pet is my child and this is their house." I have kids and this is their house. But I won't let my kids jump all over a guest and I make my kids get up and move out of a spot for our guest to sit comfortably. And I sure don't let my kids cold dead stare a guest down while they're trying to eat. So yes I understand the love of a pet and I sure wouldn't let a guest mistreat my pets but I also keep in mind that not all guests love my animals the way I do.