Okay, the issue presents itself a short time after installing a custom launcher (at least in my case). Force stopping the stock launcher restores recent button functionality. However, it remains temperamental while on the home screen of my custom launcher (mLauncher).
(Note that removing the stock launcher does not fix the issue.)
After some research, I found this is a longstanding Android issue which has historically been remedied by re-triggering the setup wizard activity (with a Nova Launcher widget or Activity Launcher by Adam Szalkowski) after setting your custom launcher to default. This appears to be the solution with modern versions of Android as well, however it now requires root.
Unfortunately, without root it appears there's no way to trigger the activity from 'app.grapheneos.setupwizard' which is disabled after the initial setup is complete.
...thinking out loud, maybe this could be solved by a factory reset and finding a way to postpone the initial setup until after the custom launcher is installed and set to default. 🤔