I'd use this method to handle the cooldown
Passive ability with cooldown - Best method!, then use some method for the bonus, for example
New Bonus [vJASS][LUA] and use this for tracking damage.
GUI Damage Engine
www.hiveworkshop.com
So: When you learn the ability, give the unit the bonus you want with the bonus system and setup the "Passive with cooldown", without the
Cargo Hold (Meat Wagon), which will result in the ability not going on cooldown instantly.
When dealing damage to a target that you want to steal gold from (track that with Damage Engine, check that the cooldown is less than 0.01 seconds), remove some gold from damage target and give it to damage source, remove the bonus damage, give the Cargo Hold-ability to the unit (will result in the ability going on cooldown), start a timer with a short timer (0.1 seconds or so) to remove the Cargo Hold and start a the timer again for the remaining of the cooldown. When it finishes, give the bonus damage again and it's ready to go again!