|I'd say soak them in a heavy vinegar concentration (at least 4-6 cups in the washer, if not the whole jug, you can't really overdo this) first and then wash them in very hot water (turn up the water heater if you can, add boiling water if it's safe for you to do so or use a sanitary cycle if you have one) with the tea tree oil if you'd like. Wash them once with the tea tree oil (about 20-40 drops is what I've heard is a good way to disinfect. Then wash them with nothing at all at least once or twice. The vinegar will dislodge any detergent or mineral build-up that may be causing the stink. It won't really disinfect as such though, vinegar can only disinfect when it's undiluted. You'd have to soak the diapers in pure vinegar to use it as a disinfectant. But honestly I don't think that's necessary. Then the tea tree oil will help disinfect while the multiple hot washes will help with detergent or bacteria build-up as well as rinsing out the tea tree oil (it can irritate some people's skin so it's best that it's washed out well when you're using that much).
Do the diapers smell like ammonia in the morning? If so then you're likely dealing with detergent or bacteria build-up. Basically either too much or too little detergent (obviously big oversimplification there, could be other factors as well such as not enough water in the machine, using water that's too cold etc etc...). Sunning would help a little with the bacteria as the UV rays are antibacterial but the sun can't reach inner layers very well so I doubt that's a huge factor.
As for diaper cream, go ahead and use it. A few times probably won't hurt your diapers. At worst you'd just maybe have to scrub it out by hand with detergent and a toothbrush. To help avoid that though, I'd recommend putting something between her skin (ie the cream) and the diaper. It doesn't have to be fleece, any type of fabric will do. An old hand towel, a washcloth, a cut up old t-shirt. Anything that isn't the end of the world if it gets a little stained or cream build-up basically... Heck you could even maybe use toilet paper. It'd be messy to clean up in the morning but a few layers would probably work well.