Life is too short to spend it trying to fix someone with a bunch of baggage.
I've also noticed that sometimes trying to "help" just makes it obvious to this person that this is a good way to get attention or bring much needed drama to their live (and unfortunately, to yours too).
Some things we just have to fix on our own, when we're ready. You can't make this decision for her.
I went out a few times with a girl that was educated, hard working, intelligent, and funny. She wasn't that cute, but I got along with her really well, and we would have a good time when we hung out.
The real problem for me was her "intensity" issues. We could be talking about anything (not necessarily anything to do with us either, maybe even some current event), and if something hit her wrong, she'd go on long winded rants and bitter tirades. One night, we talked about the bad side of labor unions, and we're both in agreement on the subject-and she told me the next day, she was so worked up during our discussion, that she couldn't sleep for 3 hours after we got off the phone. She also get very judgemental, self righteous, and indignant when it came to many topics.
What I had with her, and what the OP is dealing with, is a low E.Q. (emotional quotient). She's immature emotionally, is not in touch with her feelings, and is probably poor communicator when it comes to dealing with topics when she becomes emotional.
This takes time and effort for her to fix, and there is probably not much you can do. She has to outgrow it on her own.