Background:

Been dating this girl for month (lets call her Sally), she's usually submissive and does what she's told, had potential to be LTR material.

Her boy bestfriend (Billy) has been orbiting her since five or six years, told her she's in love with her few months ago but she told him he's like brother to her - the usual. He's the definition of awkward clingy guy whos quite autistic, so I never made an issue with their friendship.

The situation:

She (Sally) wanted to introduce me to her bestfriend (Melinda) and the boy bestfriend (Billy), so we met up at Melinda's place and after speaking a while and me teasing Sally, we ended up playing a board game.

So me and her bestfriend (Melinda) teamed up for one board game in which she would explain the rules and so on to me while playing, requirement was that each team had to think of secret sign to alert the other party without speaking, so Sally (the gf) and Billy (gf's boy bestfriend) went to another room to discuss the sign, I did not like it, but I did not think of it much, since it took like minute or two.

Sally and Billy came out of the room and Billy was like "Sally came so quickly". I'm dead silent, I look him in the eyes and told him - say that again. The idiot has said it again. I did not show anger or annoyance and told him - do you wanna find out if there's trashcans outside the windows, because I'm about to throw you there to which he replied "only god knows", to which I replied "you might find out soon". I tried not showing my anger and I believe I held frame while everyone is there - and this is where i think i could've made better reaction.

We leave the place, I told Sally to stay in the car and I went to Billy who was already leaving, grabbed him by the back of his neck and told him to never repeat or say any stupid jokes like that, he started shaking and told me that me and him friends and all is ok, I repeated what I said and slightly slapped him by his neck, he barely said ok.

Went to Sally, she asked what we spoke to which I told her, but I kept getting angry while explaining her that this is unacceptable behavior from him and if she keeps speaking to him or keeps their friendship, we're over. This is disrespectful towards her, towards me and his autistic behavior isn't excuse. She told she cant end friendships like that and she doesn't want to choose between me and him. I told her that i will not tolerate that and the next time i see him he won't be able to walk. She was like - he's used to making stupid jokes like that, don't think of it much, there will be never anything between us. I told her this is not a compromise which i will make and told her it will not work for us since she cant see my point, so we ended the relationship.

I'm asking you for advice, opinions and what should i do next? Did i handled the situation properly and if not what should have i done?