Lars, if you could find a way to do that would be awesome!
Especially an ad_internal_redirect would be very useful I think, if it provides a cleaner way to do this without moving around the full page result in the code like above (not knowing if it has any performance implications). I guess it's necessary to build a hook for that into the request processor, or do you see a possibility to do without?
ad_internal_redirect should in any case make sure that the page it is being called from does not get skipped under PerformanceMode. And it should be possible to call any possibly target, as you said. Specifically with the template::adp_parse solution above I am very happy that it is possible to specify an tcl/adp pair, but further dispatch to yet another adp by doing a "ad_return_template $some_other_adp" within the tcl file.