If it is a recurring problem then it can only be one thing - water quality. The pathogen that causes Ich/White Spot is always in freshwater, everywhere, all the time, just like there is always bacteria on your skin. It doesn't become a problem unless the fish's immune system is weakened somehow, the same way people tend to get bacterial infections when they are run-down or injured.
Ironically it may be that your water changes are exacerbating the problem if they are large and intermittent - they may be changing the water parameters too quickly which causes stress. How often / how much water do you change? 10-20% per week causes far less stress than 20-40% per fortnight because the water quality is more constant week-to-week.
I'd stick to using Malachite Green or White Spot Cure - they both work the same way (minor differences), but make sure you continue to treat for 10-14 days after you can no longer see any signs of White spot, because otherwise the free swimming (virtually invisible) stage of the pathogen will take hold again. (FYI the 'white spot' is actually millions of baby pathogens about to burst out and become free-swimming - they live for about 10 days at 28 degrees - that is the stage that Malachite green targets)