I second this recommendation! I’d consider immutably a requirement here. For a little more stability, I’d stay one version behind the current release of Fedora (last 3 are supported at any time). So when 49 comes out, I’d stay on 39 and only update to 40 when 41 releases about 6 months later.
Have you tried rpm-ostree apply-live? https://coreos.github.io/rpm-ostree/apply-live/