As far as I know, if you perform a 301 redirect to a certain page, browsers will remember it. Therefore, when you want to change it again, the old visitors, without the cache erased, will continue with the "old" temporary redirect route. You could set an expiration date / duration of 301, but why not use 302, a temporary redirect, for a temporary solution?
If I understand, do you want outbound links to be redirected?
Someone corrects me if I'm wrong, but for that, I'd have to do redirects in the destination domain / host. Can you do that, do you have access?
Or edit all your outbound links. You can not think of a more elegant solution.