The problem might not have been the heater, but the water change. You said you did a 25% water change. Most people put their heater close to surface level . If this is the case with you, the water level would have dropped lower than the thermostat in the heater. The water acts to keep the parts in the thermostat cool. If the water line drops below the thermostat, then it gets really hot , really fast, damaging the thermostat and the seals.
The thermostat would be in the top part of the heater. If the water drops below the thermostat, the thin metal contacts heat up really fast and really hot. This will in many cases cause the heater to malfuntion. And run hotter than the desired setting.
Ive done this twice. One was on a brand new heater. I caught it before there was a problem in the tank. I still have both heaters, and both now run about 10 degrees higher than the dial setting.
You hear a lot of people making claims about heaters, And I've had them malfuntion on me twice. Both times was my fault. Now I run my heaters as far down below the water surface as possible and havent had this problem again. I would imagine this happens alot, and the heater always gets the blame.
Sorry for the disaster. I hope this never happens to you again.