Forgiving is absolving someone of what they've done to you. Of the responsibility of their actions, of the consequences you faced for it. Forgiveness can't be given if the wound is too deep, it's not some magical thing that makes it go away. With time and distance he might be able to forget just how terrible it was a little bit, dull the edge of the pain. But forgive? Never. He's been violated in ways a real person can't understand because as far as we know it's not even possible. There was a whole other layer of vulnerability for Pokemon and she chewed that up and laughed at his pain.
Forgiving this is insanity. Believing people just get better or are better for forgiving someone for hurting them this badly is silly. You don't have to HATE them, hate can be poison, like you said. But you also shouldn't forgive them. Forgiveness is not the opposite of hatred.