Here's what I would try:
http://www.amazon.com/gp/product/B00...?ie=UTF8&psc=1
I use this with loads that have bad odors -- everything from kitty accidents to old teen sweat. For a small load in my front-loader, I use a heaping teaspoon in addition to the regular soap. If it's really bad, I have used up to 1 tablespoon. If you have a top-loader or a large front-loader (mine is small), you can use more per load. It does not damage anything. Basically this is a ground-up mineral that absorbs odor, then rinses away with the water.