Someone has to take the player who invited his girlfriend aside and talk to him one-on-one. (I'll address that to "you", for the moment, since I hope you'll get your GM to read this.)
Make it clear that it was OK to bring her, but not OK to turn game sessions into makeout sessions. Then lay down the unfortunate reality of the situation: if they can't cut it out, then one or both of them will be firmly uninvited, and soon.
When you do this, take care to not shame them for the makeouts (there's enough shaming around this stuff in life; no need to add to it), emphasising instead that it's just a poor choice of circumstances. Focus on how disruptive it is to the game people came for, and if you mention how it makes the group uncomfortable, soften that by emphasising that there's nothing wrong with a makeout itself — just the choice of time and place. Even better, congratulate them for their obvious happiness while asking them to save it for later or take it elsewhere.
There's a consent line they're crossing here too: by joining an intimate gathering and making out during it, they're making you all surprise visual and audio participants in this overtly sexual activity. That's super not cool, and not something anyone is obligated to be okay with. Again, not something to shame them for—the point here is that being not OK with this at the table is totally justified.
When you're not the GM or venue host, your option is slightly different: go to the GM, and have them do the one-on-one conversation and ultimatum instead.
If they won't, then you present them with your own unfortunate reality: this is not OK, and you will not be coming to the game anymore if the GM/host is unwilling to enforce reasonable social boundaries during their game / in their home.
Leaving sucks, but if the GM/host is going to abdicate their responsibility to make game sessions safe social spaces, then your most powerful tool for creating change is to enforce your own side of the social contract and exercise your right to leave. Chances are that if you have to go to that degree of effort, suddenly the GM/host will realise that they have imminent group destruction on their hands and will do the reasonable, pro-social thing of dealing with the offending people. (And if they won't, you've dodged a really nasty bullet!)
The alternative — staying anyway and hoping it will just get better — will most likely result in the group dissolving anyway. Either the players cut it out, or other players will start leaving after they become too uncomfortable. The sooner you present the ultimatum of "fix it or I walk", the more likely there will still be a group to fix when you give the ultimatum.
Oh, and as an illustrative aside: I have been that player who brought his girlfriend, and was stupid about overt makeouts. That group dissolved shortly after, and though we were all friends we soon drifted apart. Let my experience be your cautionary tale!
Firstly, you should talk to all your players about the issue outside of a session. You can get some personal impressions first with one-on-one conversations, but ultimately the entire group should sit down to discuss the problems. Make sure the discussion is democratic in nature, though. JohnP points this out in a related question: "The group setting can be dangerous, as it can turn into people digging up old grievances or ganging up on a particular person."
During the discussion you should ensure that everyone is on the same page about how they want the game to be played. The same page tool is a useful set of questions that will drive the discussion in the right direction. Just make sure everyone is fully involved in the discussion and are voicing their opinions clearly (no passive-aggressive bs). If your players are open to compromises a consensus should be reached.
Secondly, make sure your friend is not suffering from My Guy syndrome. If the description matches (and it sounds like it does), show her the link privately and let her think about it. It should help her be more aware of her role as a player and hopefully remedy some of the issues.
You also mentioned your player gets upset as a result of your decisions. This related question contains a lot of suggestions for how to handle players that take things personally, ranging from studying your own approach to kicking out the problematic player.
In the end, though, you are the GM. You are the writer of half of the story, the referee on all mechanics, and the leader in the quest for fun. The way you drive your campaign is part of your style and your players should respect it. They need to be aware that your goal is always to increase the enjoyment they collectively get out of your game. A certain level of trust and respect is absolutely necessary. If this is impossible to obtain in your group, then the group as it is cannot function. Kicking out players or stepping down as GM would be the next steps to try.
Because the GM is so special, though, new players often fail to grasp just how complex the GM role can be, and can at times see him as an enemy and spoilsport. A neat "trick" you can use to show your players what being a GM is really about (that also gives you some rest from the responsibility of being a GM) is to have another person in the group be the GM for a few sessions. It doesn't have to (and most often shouldn't) be the same campaign you're running. Instead, it can be a few sessions of an off-shoot campaign. It's fun for the players because they get the chance to try out new (and often times silly) character builds, and the new GM will discover what it feels to have all this responsibility. Once everyone has GM-ed a couple of sessions, you will all have an idea of who's best at it and will work towards keeping that person as GM in the future. There's a chance it might not be you, but in the end it should result in a better experience overall.
Keep in mind that not everyone is fit for GM-ing, or willing to try at all. Don't force players to GM, and if they decide to try, encourage them to design very short adventures (no more than three sessions). They can always expand on them later if they like it, or end them early if they don't. The player that questions your decisions often probably thinks they can do a better job, so they're likely to accept your offer to prove themselves.
The goal of the tactics below is to inform the GM what behaviours produce a good enjoyable game for all (point 2), what behaviours they should adjust (point 3), as well as (point 1) to try to make them aware of the fact that they have a different role at the table as the GM (as judge, as arbiter of fair, and as the interpreter and controller or rules) in addition to the role they had as a player (to have fun, to try to not ruin the fun of others)
It's unclear from the description if this person is new to GMing or not. This may be a case of the person GMing in the only manner they know how to play. This will be easier if that is the case, but even if not, my approach in this scenario is to use all of the following:
1) "Catch him in the act" ... When an attack roll that used to miss now hits, ask why. Accept the answer, but make sure to question every time. The idea here is to make the GM know that they are expected to play by rules (for the purpose of asking that the GM follow rules, what actual rules doesn't matter, just that they need to play by some rules).
2) Reinforcing (positive) Feedback ... When there is an encounter that runs right, talk it up. Say how fun it was. Say how tense it was. Point out swings that appear to happen naturally and how they produce story. The goal here is obvious - to encourage more of the good stuff.
3) Adjusting Feedback ... (which it sounds like you are at least attempting) When things are not right, tell the GM - after the fact is fine - you're not out to embarrass or insult, but to get the GM to be better next session - but make sure to say both why the encounter was not as fun as it could have been (the on-the-fly adjustments made it feel like deus ex machina, rather than real tension, with a real chance of failure) AND most importantly, what would have made it better (if the uber-whip-dude had been a little less tough, the start of the fight would have been easier, but the end of the fight would have been a tense touch and go affair)