Resolved! But still mysterious.
I decided to try uninstalling and reinstalling every recently updated app on my phone, starting with my TestFlight apps. The first one I tried, Pocket Casts, doesn’t even have a Share Sheet extension, but after uninstalling it and rebooting my phone, my Share Sheet looks normal again! Reinstalling the Pocket Casts build did not reintroduce the problem.
I had definitely tried uninstalling and reinstalling several apps with Share Sheet extensions before to no avail, but this was the first TestFlight build I had tried uninstalling since the issue arose.
YMMV.
This was confirmed to be a bug in the Pocket Casts TestFlight build I was using.