also wenn ich das richtig sehe, muss ich mich für ein 50\50 Signal von der Idee des Interruptfreien PWM verabschieden.
Die reine PWM Ausgabe kann natürlich hardwaremässig ohne Interrupt erfolgen.
Nur wenn der Wert des Comparematch Registers geändert werden soll muß das in einem zum TCNT synchronen Zeitfenster geschehen. Also z.B. Im Timer Overflow Interrupt.

Du kannst natürlich auch TCNT pollen und bei einem Zählerstand von 0 das Comparematch Register neu laden.

Dabei kann es aber passieren, das deine Routine diesen 0 Zählerstand "übersieht". Darum würde ich es zweckmässigerweise doch in einem Interrupt machen.
Da der Timer ohnehin schon belegt ist, schenkst Du eigentlich auch keine Ressourcen her.