There's a couple of breath-hold exercises that I've come across that you might like (or not like... the second one is pretty hard). One is to swim a length underwater that is a little bit challenging for you, as slow as you can. The more times you do it the more you can relax and stretch the time out. We do 50m usually and some guys take up to 2 or 2 1/2 minutes, but if you are getting pushed by 25m breath-holds then start with that. I find the benefit of this is that it helps you relax in situations when you are on the bottom but maybe not moving that much.
The other good one is to swim 87.5m flat out on the surface, then do 12.5m underwater as slow as you can. Your lungs will be screaming at you to breathe but that's just the CO2 talking rather than a lack of oxygen.
Probably the biggest thing holding back your breath-hold when you are starting out is your mind rather than your body. Remember to have someone watching you when you're pushing it. You don't want to drown eh
