WP, I know you feel like you said things that can't be taken back, but I am sure that your W has as well. We all have done that, we all have said we are sorry, and it is up to her to accept your apology.
A friend once pointed out to me that Jesus died on the cross to forgive us our sins. If he can forgive us but we can't forgive ourselves, are we saying to God that his sacrifice isn't enough. I remind myself of that story everytime I struggle with something that I have done that I regret, and trust me there are many.
All we can do is the best we can do. I think you are doing great. Just continue to work on yourself and remember that you can't change anything about your W, only yourself.