Update.
Borrowed my brother's OBD2 thing, expecting to see a cyl 2 misfire code, but... nothing! No codes.
It definitely misfired the day after I fitted the new coils and every day since, the only difference this time is that the engine light flashed but didn't stay illuminated. When I originally had the misfires, before I fitted the coils, the engine light flashed, stayed on, and subsequently I got the cyl 2 misfire code, which I then cleared.
So, to recap, the misfire appears to have subsided and there are no fault codes. I removed the spark plugs, and didn't find anything of concern. They all look similar and they don't look fouled: (1-4 in order from bottom to top; that's just a bit of tubing on plug 1 because the socket wouldn't grab it)
Here's plug 2:
So, back in went the same plugs, this time with 2 and 3 swapped. The plan is to drive it as much as possible to induce the misfire, then scan it, see which cylinder it is.
I've got the new plugs waiting for if and when they're needed.
So I'm a bit stumped for today. The car pulls like a train and is as smooth as it gets. No fault codes. But I know something aint right.