The resistors can be replaced. There's no need to replace the entire unit, unless you just prefer not to mess with the necessary soldering.
Repeated resistor burnout is most often caused by allowing the unit to run dry, or just not having enough smoke fluid in the unit. If the unit runs dry once, it can burn the wadding so that smoke fluid doesn't get to the element, which may not cause an immediate burnout but the lack of smoke fluid will eventually cause the element to overheat. The wick should be inspected periodically for blackening at the resistor and replaced if it is hardened. If there is black crud on the resistor, that should also be removed with a brush or some kind of pick. The fluid acts as a coolant, in addition to making the smoke when it vaporizes. A smoke unit should be refilled as soon as the smoke production looks thin. The puffers tend to need fluid about every ten or fifteen minutes. I've got a whole bunch of engines with puffer units (including a couple of those Lionel 2-8-0's), I almost always have them smoking when I run them, and I've replaced one resistor in the last ten years. And that was on a smoke unit that had shorted out.