Does it use a direct drive hubmotor, or a geared hubmotor, or a middrive of some type?
If it is a DD hubmotor then it would have probably gotten harder to turn the wheel after the pop, which would mean it's FETs in the controller. Disconnecting controller from motor would return the wheel to normal turning resistance.
A geared hubmotor would still be easy to turn forwards, but much harder than normal backwards, for the same failure.
A middrive usually has internal freewheels that keep you from being able to turn the motor from the outside, so can't really tell with this kind of test.
Most likely it is the controller, in any case, so you could replace that. If you do replace it, get a matching set of LCD and controller that come as a "kit", or else the display may not work with the new controller (it might plug in and turn on, but it may not be able to change controller settings or display speed, voltage, etc.; there isn't a common interchangeability with controllers and displays, not guaranteed even with the same brand).
So a new KT (kunteng) controller and display with the same limits as your present one (13A rated, 26A max, 48v, LVC about 40-41v) that supports your throttle and any pedal sensor (PAS) you have, would be as direct a replacement as possible. You may be able to find the exact same one, though I haven't poked around for one yet.
If the controller is not mounted out in the airflow, it could overheat and this is what usually causes such failures. If it is already mounted in the airflow, it might not be capable of handling the load created by the grades you are riding up, and you might need a different controller that limits differently to prevent overheating itself, or some form of active cooling, or both.
Something that measures the phase currents in the motor rather than (or in addition to) the battery currents, and also monitors it's own internal temperature, might be needed. FOC controllers generally do the first, and some may also do the second. But they aren't just a drop-in replacement, as they typically need to be setup (programmed) for your specific motor and usage.