Honestly, if you're unhappy with the situation (Which you should be) and if it's serious to YOU, I recommend drawing a line and giving her a choice. Let her know that you don't want her to be eating dinner with another guy and that it makes you unhappy. If she chooses to keep hanging with the other guy and is okay hurting you in the process, walk away.
Aside from all the red flags, you are giving her the best possible scenario for HER. She can still be "with" you while checking out other options. You need to make it known that your love and time is not unconditional and that if you aren't shown respect you deserve, you're willing to walk away from the situation for YOURSELF
~
Reverse the roles quickly: If you came home late with another girl eating dinner and your current gf got upset, would you continue hanging with the new girl against your current girlfriends wishes or would you sacrifice that option to keep your gf happy? Would you even do that in the first place? In what scenario would you ever actually do that?
My guess is throughout the relationship, you never firmly drew your line or stood your ground and simply "tolerated" issues, which is what I've been guilty for in almost all my relationships. Your line gets tested everyday and when you never hold your ground, you finally end up in a situation like this. It's NOT your fault things ended up like this and her actions have more red flags than a Chinese communist party.
However, at the end of the day, whether or not your current relationship works out, take action and make the best choice for YOURSELF. Would you rather slowly "endure" this "relationship" (which is a passive and lame way for a man to be) or take action and take the risk (the man way) of potentially ending the relationship, letting her know you're unhappy with the situation, and are willing to walk away from her if she chooses not to comply?
Get your power back as a man and make the choice you know you need to make despite the risk. If she doesn't respect you, she belongs to the streets. There's plenty of fish in the sea and even though it'll be hard, the faster you get rid of a bad fish, the quicker you'll find a great girl who would never even THINK of doing this to you.
Time is a fake source of value and it makes it hard to walk away, so here's a good strategy: Every day you should reflect and ask yourself "why did I get in this relationship in the first place?" If the relationship isn't giving you what you wanted and you let her know AND she isn't ever going to change, it's pretty obvious you should walk away right? Goodluck