I agree this looks like a bug. I just upgraded a game with lots of functionality from 4.6.1 to 4.7 and now most is broken because I’m using timers a lot. Neither “set timer to 0.0 (by name or delegate)” nor “clear timer (by name or delegate)” seems to work for me.
I also agree that is looks like you can clear the timer from external execution paths but not from within an execution initiated by the timer event / delegate (as stated by @greynz).
I’ll have to wait with the upgrade to 4.7 until this is fixed because it’s too much work changing all the timers everywhere.
Also, I haven’t used the boolean functions “Timer exists” or “Timer active” much, but these just say “not within scope” when I run them. I might just be using them wrong though.