This question got roomba'd after a year but the problem came up again with watchOS 8 so I thought it was worth more investigation.
tl;dr Apple now stops signing old watchOS versions like old iOS versions.
It used to be that any version of watchOS could be installed on an Apple Watch given the device is connected over USB to a Mac and an IPSW file of the watchOS version.
As a normal Apple customer, this is impossible since neither the connector nor the IPSW files are provided by Apple. I therefore speculate that Apple didn't worry about stopping signing old versions of watchOS.
more easily available (sketchy) devices for connecting Apple Watch to Mac
(image source: https://www.soydemac.com/en/ibus-is-the-unofficial-tool-to-restore-apple-watch-video/)
IPSW files available, either
in exchange double-digits of dollars on scammy-looking yet vouched on Reddit websites that sometimes requires "custom drivers"?!
and saying they don't provide firmware, while also providing firmware
(not providing a source for this!)
or more recently sometimes directly off Apple's CDN, with some links being provided on The iPhone Wiki as linked to in the question,
or wherever software like this gets its restore images from
(image source: https://facebook.com/iBUSTOOLS)
Apple needed to stop people downgrading watchOS for the same reasons as iOS (whether one agrees with this behaviour or not, that's outside scope). For more information on why older versions of iOS cannot be installed, see
Various websites keep track of the signing status of iOS versions, but I couldn't find a site for watchOS, presumably because this has only recently been an issue and also there's no demand for it!
tihmstar's tsschecker helps check the signing status by making the right request to Apple's API. It's really useful for iOS and I utilised it for watchOS in this case.
Downloading the IPSW for watchOS 7.5 on Watch5,2 (from Apple's servers!) and extracting the BuildManifest.plist to give tsschecker lets the software craft the right request and check the response:
$ tsschecker -d Watch5,2 \
--build-manifest ~/Downloads/Watch5\,2_7.5_18T567_Restore/BuildManifest.plist \
--buildid 18T567 \
Version: b9d193aa6e6d24421094873c830692d02d8b32f5 - 304
libfragmentzip version: 0.59-542a470d7be248681dba71d0f04e7dc8c2718b73
[TSSC] opening /Users/user/Downloads/Watch5,2_7.5_18T567_Restore/BuildManifest.plist
[TSSR] LOG: device Watch5,2 doesn't need a baseband ticket, continuing without requesting a Baseband ticket
[TSSR] Request URL set to https://gs.apple.com/TSS/controller?action=2
[TSSR] Sending TSS request attempt 1... failure
[Error] ERROR: TSS request failed (status=94, message=This device isn't eligible for the requested build.)
Build 18T567 for device Watch5,2 IS NOT being signed!
Apple's API said
This device isn't eligible for the requested build.
so that version of watchOS can no longer be installed on that Apple Watch.
Since Apple was not signing any version of watchOS 7, I needed to install watchOS 8 on my Apple Watch. Since watchOS 8 requires iOS 15, Watch.app was correct in saying I needed to update my iPhone, and Apple Watch would be unable to complete the update itself as it would no longer be able to communicate with my iOS 14 iPhone.
Therefore I was simply too late to update from one watchOS 7.x to another 7.x and I needed to go to watchOS 8, which required iOS 15. Had I done the update to iOS 14.8 earlier, I would have been able to do the watchOS update from 7.x to another 7.x.