Na das mit dem Jump auf Zero würde ich lassen.
Kann dir nur meine Erfahrungen mit dem AVR's beschreiben.

Ein Jump auf Zero macht nicht wirklich das, was ein HW-Reset tut.
Eine SW-Alternative ist ein Watchdog.
Bei mir läuft dies so:
- erstelle eine Sub-Routibe "SysReset"
- starte dort einen Watchdog mit möglichst kurzer Zeit
- gehe in eine Edlos-Loop

Der Watchdog besorgt den Rest.