Imo..
I understand why youre disappointed. And i dont fault you
However other than choosing to end your association i dont see how you can "tackle" it.
I say this because your son is 23, and tbh if he on reflection, feels this was an unfair ask of him hes old enough to rectify that with this family friend himself. And if he doesnt think it was inappropriate, just you do. End your association with him and leave it there. You dont own him your friendship, but your opinion is likely unwelcome.
If you start being morals monitor with this friend he will likely point out that your son isnt a child and maybe you should mind your own business when your house isnt in order. You keep using words like "encourage".. DS didnt and doesnt need encouragement. The language is apportioning blame at the door of this friend.
If son hadnt been casually boasting about drugs this may never happened, so youd be better addressing the source of the problem not the results.
The time for considering whether this friend, who has drug taking past in his own youth, is a good influence passed. If you find his behaviour unacceptable, quietly end the friendship.
But this friend wont thank you for a scolding and DS wont thank you for as you point out breaching his trust.
If it were me id prioritise my problems and for me address DSs drug involvement, maintaining his trust and open communication would sit miles above giving my 2p worth of opinion to a man who should have known better but apparently doesnt. I say this not being unkind but just think about this.. what do you think you could say to this friend that he doesnt already know and didnt care about? What difference would your words make? Non.
Imo silent distance/removal or letting it go are your only choices. And imo neither matters, it isnt important that your friends a prick only that your son is dealing.