You may have used the event: A unit begins casting an ability.
If so, change it to: A unit starts the effect of an ability.
Begins casting triggers when you press the button for the spell, before the animations has started.
If you use a trigger that will teleport your caster somewhere in GUI, then all actions will be aborted for that unit.
In other words, he won't cast the ability. That's why the cooldown won't start, because the spell is actually never casted.
With starts the effect on the other hand, the event triggers when the effect of the spell is released, for example when the animation has come to a special point or after the casting time of a spell.
This triggers after the cooldown is set.