Overdrinking and boundaries

I’m struggling with people being allowed to do what they want and my personal boundaries. I’ve been sober for 6 years now and my boyfriend still drinks. I’m not bothered by him having a drink anymore (I used to be, in the beginning) but when he drinks excessively, where he’s stumbling and slurring his speech, I find it hard to be around. Trying to have conversations is frustrating because he doesn’t remember the conversation we had 30 minutes ago and repeats himself. Sometimes he gets overly touchy feely and the last thing I want is a sloppy drunk person touching me. And then our whole bedroom reeks like booze, which is nauseating.

I would rather be alone and do my own thing on these nights. But it’s in my home so I can’t leave, except for leaving the room. One time I went to my mom’s. Is this what I have to work with? If I can only control myself, I have to let people behave the way they want and that includes in my home if they live there?

I see that it’s my thoughts about drunk people that’s the issue. Because other drunk people LOVE talking to drunk people and they understand each other perfectly fine. So it’s not drunk people that’s the problem. But I wish I didn’t have to have them in my home.

In the boundaries lesson, Brooke says if people started doing drugs around her, she would leave and that’s her boundary. But what if it was her husband? Say he decided to start smoking weed in their home (or doing cocaine if weed doesn’t cross her boundary). He lives there and has the right to do what he wants. What would be her boundary there? Why wouldn’t she change her thoughts to be ok with people doing drugs around her?

I guess, as a new scholar, trying to adopt these new ways of thinking, I’m just confused about when to allow adults to behave however they want and change my thoughts to be ok with it, and when to set a boundary? And how to set a boundary when I want to remove myself from the situation, but don’t have anywhere to go.

And do I wait until there’s a boundary violation each time? At what point do we try to prevent the boundary violation from happening in the first place?