Forwarding is complicated, #[4] proposal I think explains it best.
Root key with delegation and fiatjaf's proposal look good. However, to use them still requires transferring to a new key.
Using out-of-bound means, like NIP-05, to be the source of information about the new key, combined with a means to revoke a key looks like it could be an option.