Like everyone else mentioned, you will need to trigger this in order to occur (mana and cool down reduction).
Is this an ability that will be used by the A.I.? Or is it a spell that user will use?
If it is the A.I., the computer will not cast defend if it has been given extra levels or certain modifications. I just recently got done incorporating an A.I. Defend that gives a bonus if the unit makes a kill while defending. A way in which I got around the movement-stop business, was to reissue an order-move command to the unit after the ability has been casted. I know that this isn't your issue, but it may be something you'll need to address.
Defend could also be setup so that when it is detected in the event's trigger, that it checks the unit's mana. You'd need to convert their ability level to an integer representing the required mana for the ability, and if the unit has less, have the trigger not fire. If it does fire, then trigger the unit's mana to take a reduction. As for the cooldown, you would probably need to make a wait system that count's down the time from the moment the unit's defend is detected, and until it reaches the time you've allocated. You can use a "real" variable as your time to wait. Simply think of how much time you want each ability to reduce the cooldown and set the "real" variable, with math, to represent it.