Yes. You could make a python script to disable the promotion on the specific event you want to disable it on, and leave a marker in the script data for the unit with the turn it was disabled. Then at the start of every turn you make a check against this script data for every unit, and enable the promotion again if it passes.