In einer ISR haben sei() und cli() nichts zu suchen. Das macht der Compiler selbst. (Ausser die damit verbundenen Auswirkungen sind beabsichtigt, was ich hier aber nicht glaub)

Die Interrupts 1x in der main VOR der while(1) freigeben und gut is.
Nicht ständig an und abschalten.