Du musst die ganzen Timer-Register vorher auf 0 setzen. Auf dem Arduino sind alle Timer für PWM vorkonfiguriert. Das ist kein nackter Prozessor!
Außerdem musst du auf Multi-Byte Variablen außerhalb der ISR atomar zugreifen. d.h. bei abgeschalteten Interrupts
TCNT2 in der ISR auf 0 zu setzen ist überflüssig