I've seen a few similar cases so far,
one with a guy being the victim, one with a girl...
unfortunately, in the end, it's a case by case thing. The guy in the end got the message and dumped her once and for all (still refuses to even speak to her other than a "hello").
The girl is still with the prick.
For both, we did the same thing, help, listen, advise her (even to the point of literally saying dump em, for this reason, this reason, this reason, ...)
In the end, you'll have to make a decision if you're willing to put up with your friend over this shit, and stay his friend, or drop him. You can't change things for other people, only for yourself
edit: what you *could* have done when she was banging on the door, refusing to leave, was call the cops.
Hindsight 20/20 and all that