VERY LONG UPDATE: Did some more exploring with TM, still no solution. But I did find that when TM runs, it remounts the target drive with a different name, but that drive is not available to Finder to show, nor to the user to look at. Then when TM ends, the remounted drive disappears. Curious behavior?
You can stop there unless you want the ugly details that follow.
Here is what I did to discover this: There are some useful little utilities at Eclectic Light website. One is The Time Machine Mechanic (T2M2). T2M2 has several functions, one of which parses the Universal Log that Monterey builds to pull out all TM-related log entries. So, I triggered a backup and watched the log entries T2M2 pulled out. The target drive name was "960 SSD." I saw this entry in the log:
2022-01-05 17:11:42.648768-0500 Backing up 1 volumes to 960 SSD (/dev/disk7s1,1e): /Volumes/960 SSD 1
So, TM looked like it mounted my "960 SSD" drive as "960 SSD 1" instead. Note that the /dev/disk location had appended the ", 1e" part. In Terminal "diskutil list" only showed the disk7s1" without the ", 1e." Curious, I used Terminal and went to /Volumes and sure enough, there was an entry for "960 SSD 1" mounted there. But no "960 SSD" even though it was still on my desktop and I could open it in Finder. So, for some reason, TM is manipulating drives, mounting one drive with an invisible mount, then writing the backup to that invisible mount. Every so often it updates the Universal Log with progress reports so that the estimate of time to go can be calculated. I found lots of progress entries like this one:
Current: Zero KB/(l:289 KB,p:291 KB) - /Volumes/960 SSD 1/2022-01-05-171144.inprogress/Macintosh HD - Data/Users/<<my account>>/Pictures/Photos Library 2.photoslibrary/resources/derivatives/9/961CBF64-AB20-48D8-A3F2-D4721BCDD518_1_105_c.jpeg
But none of that shows up on "960 SSD," which is logical, sort of, because it's been written to "960 SSD 1" and that volume isn't showing in Finder, Terminal, or Disk Utility, for that matter. What seems to be going on is that TM is writing to a secret Volume it has established on the drive, with some intent to re-identify "960 SSD 1" as "960 SSD" at some point in the process. But it fails at that, and I end up with 400GB of space missing on the drive that First Aid can't recover (it reports no errors) and which Terminal won't let me see (I tried to
cd to 960 SSS 1 and was told "Operation not permitted." I tried to use
ls to see what was there, but that was also a failure with the same message. Tried
sudo and got the same message. So, whatever is being done by TM is at a very high authorization level (maybe root, or something even higher?).
When TM ends, I get the same error:
2022-01-05 17:53:52.502051-0500 Backup failed (104: BACKUP_DELAYED_UNFINISHED_PROTECTED_FILES)
And in /Volumes, 960 SSD 1 is gone, but 960 SSD is back. Finder sees no files on it, nor does the CLI
ls command. "com.apple.TimeMachine.localsnapshots" is there and I could use
cd to change to it, but
ls results in "Operation not permitted."
Another thing I noted in the log is that TM creates a snapshot as the first action of the backup, to a virtual drive. The log has this:
"Mounted stable snapshot: com.apple.TimeMachine.2022-01-05-184743.local at path: /Volumes/com.apple.TimeMachine.localsnapshots/Backups.backupdb/MacBook Pro16/2022-01-05-184743/Macintosh HD - Data source: Macintosh HD - Data "
The next set of messages in the log seems to be copying that snapshot to the destination drive that has been mounted, i.e., 960 SSS 1. The messages in the log are a bit cryptic, so I'm not totally confident of that.
What I'm thinking now is that when TM gets the error and backup is delayed, it does not finish the process to put back 960 SSD properly, the meta data about the file structure in the superblock is not updated, but the allocation table in the superblock shows the space used. Technically, the backup is not finished, and the system knows that. T2M2 gets this status from the system:
Analysis from 2022-01-05 14:50:35 -0500 to 2022-01-05 22:50:35 -0500 for 8 hours:
Backing up 1 volumes to 960 SSD (/dev/disk7s1,1e): /Volumes/960 SSD 1
Backing up 1 volumes to 960 SSD (/dev/disk7s2,1e): /Volumes/960 SSD 1
Current free space on backup volumes:
/Volumes/960 SSD 1
/Volumes/960 SSD 1
No auto backups started in the period, no backup has been completed successfully in the period,
currently still making a manual backup,
last manual backup started 243.0 minutes ago,
Created 0 new backups, and deleted 0 old backups,
Created 2 new snapshots, and deleted 0 old snapshots,
Of 2 volume backups:
2 were full first backups,
0 were deep scans,
0 used FSEvents,
0 used snapshot diffs,
0 used consistency scans,
0 used cached events.

No error messages found.
You can see the 960 SSD 1 is showing in this summary. I bolded the part where it thinks it's still making a backup. That message, by the way, survives a shut down, wait five minutes, power on boot cycle. So the system boots thinking it's in the middle of a backup.
One more data point. John said he got TM working by a fresh install of the OS, then adding in one app at a time and backing up after each. I had already done one nuke/pave installation, which made no difference, so I took a slightly different approach. I know Apple is discouraging the use of kernel extensions (kexts), so I used Etrecheck to find all kexts that are being loaded. I decided I could do without any of the applications that were involved, so I used AppCleaner to delete the app and all associated files. I rebooted, ran Etrecheck again and it duly reported no kexts. Tried TM, same failure, same messages, same, same, same. So, it's not some errant kext blocking TM.
What a mess Apple has on their hands!