Step 1 is talking to the host and trying to get her to say something to the other guest. Sounds like the OP has done this and the host isn't willing to be more firm with SIL.
I think the OP can say something to SIL, guest to guest. Not something like, "Hey, turn that TV off and get back over to the table!" but I think she could say, "Hey, could you turn the TV down a bit, could you try to be a little quieter, could you not use language like that please." (Okay, obviously I need help with the exact wording.)
I think only the host can completely ban/allow specific activities, but I think guests can request slight modifications from other guests that will improve their enjoyment of the day. I don't think they have to go through the host for every little thing. However, if SIL refuses a polite request to be a little quieter, I think only the host can insist/enforce further (which sounds like it may not happen). Maybe the OP could find some like-minded people and go for a walk to visit in peace? If the host sees that people would rather leave the gathering than stay and listen to someone yelling and swearing, she might decide to put her foot down.