The reason God allows evil to exist is because he allows people to exist.
People do evil. Not God.
What people most often mean by the question, “Why does God allow evil to exist?” is “Why doesn’t God stop people from doing evil?”
The reason God doesn’t stop any given person from ever doing anything they want to do is because doing so would necessarily mean violating that person’s free will. And that’s something that God will not do. And it’s definitely not something we’d like God to do. Ever. Our free will is the irreducible quality that makes us human. It’s God’s ultimate gift to us; it’s what finally defines us as free and independent beings. The fact of our free will stands as the ultimate evidence of just how deeply God loves us. It means he loves us so much he’s endowed us with the ability to completely ignore or deny him if we want to.
That is love.
God would have to withdraw that love from us—he’d have to actually hate us—in order to violate our free will.
The only way for God to stop people from doing evil would be to stop people from ever thinking about doing evil. That would mean ceasing in all people all negative thoughts. That would mean exercising full mind control over everybody in the world. That would make for one big hideously boring zombified hell.
And that’s something no one wants.
Asking “Why doesn’t God stop evil?” is the same as asking “Why doesn’t God turn all humans into a mindless zombies?” Which … isn’t the brightest question in the world.
To summarize: God doesn’t do evil; people do. And God doesn’t stop people from doing evil, because doing so would mean violating their free will, which God won’t do out of his deep and abiding love for us.
God’s love for us means we’re free to do whatever we want, evil included.
That evil exists doesn’t prove that God is not benevolent. It proves just how benevolent he is.
Below is a little xtranormal.com video thing I made about this issue. (I had no choice about the voice or setting–or, at least, these were the best of the choices I had there.)