If people around you don't change and will never change, leaving is the best choice. There is no reason for you to stay if they're causing you this amount of stress and pain. I know you want to keep volunteering there because of the good deeds you're doing, but there are lots of ways to help others. You can look for an other similar organisation but with a more positive envirmonment.
Take care