Das mit dem RETI ist glaub ich nicht ganz richtig....
Soweit ich weiß, wird das Flag von der Hardware gelöscht, sobald die ISR ausgeführt wird.
Das RETI unterscheidet sich von einem normalen RET dadurch, dass das I-bit im SREG gesetzt wird.
Nichtsdestotrotz sollte das mit dem Austauschen der Rücksprungadresse theoretisch möglich sein. Die Frage ist nur, ob das mit dem Bascom Compiler so einfach funktioniert, denn es könnte sein, dass dann irgendwelche Daten, verloren gehen (z.B. die, die sich während des Aufrufs der ISR gerade in Arbeitsregistern befanden).... da müsste man sich eingehend mit dem Compiler beschäftigen und ggf. nötige Daten zwischenspeichern.
Außerdem könnte sowas zu Problemen mit dem Speicher führen, weil Variablen, die auf dem Stack oder sonstwo vom normalen Programm zwischengespeichert wurden nicht wieder freigegeben werden, da das Programm an einer anderen Stelle weiterläuft, als geplant.

Gruß, Yaro