you can try an augment type ability, similar to the Zealot's charge. set it to activate when the unit attacks and have it apply a buff that can stack multiple times. not sure about getting it to decrease the cooldown by exactly one second each stack, but under the behavior tab in the modifications of that buff you can set how the buff affects cooldowns percentage-wise.
or, of course, you can use your Modify Unit Behavior in that buff. just place it in the buff's initial effect and its refresh effect.