Do you have any comprehensive captures of the bus data and timing, perhaps in sigrok PulseView format?
I ask because looking at the timing on your plots (assuming time axis is correct), things are happening very slowly. This could allow ample time for an mcu to implement a strategy to mitigate the errant pulse, if bus timing is consistent and predictable. For example, a simple solution might be switching the SPI reception off for 120ms (or whatever) after the scan card 'strobe' pulse, to blank out the errant pulse.
If that doesn't help, then a hardware solution would be to use 3 byte-wide shift register ICs along with an mcu. Upon the strobe pulse, the mcu could read the shift register data, either by parallel or serial connection. I think I'd go for that method rather than cpld.