Is he a service dog from an agency? Or your own dog that is being trained. If from an agency, call them. As a service dog, he is trained to disregard everyone and only be there for you. The problem with service dogs is people…not those disabled BUT everyone walking up and petting them. The dogs are at work and as a result should not be touched or spoken to by anyone except the person (you) it’s assigned to.
Now if it is your own dog… it’s time to restart training and every time he wanders off, bring him (or have someone, mostly your BIL) back and then give him whatever command you use to stay. Also if your BIL would ignore him, not touch or pet or look in his direction except to return him, that would be ideal. It isn’t easy to treat. Them. Agency’s usually start before 6months of age and continuously train them 24/7 for a min of 2 yrs. that’s why they make the receiver go to them and do training before allowing you to leave with them. It’s easy to back track training if it’s not a consistent thing.