The OP is unclear, is meant it stopped working or a patch never worked for certain games for you?
Is easy to say if the patch is being loaded, this is clearly stated on PCSX2 console, if it doesn't appear in there so the problem is in the pnach file, if it does but doesn't work then the game's version is different at some point (the SLUS may not be enough, that's the reason it is not used to identify games for cheat codes at sites like codetwink for example).
PS: You mentioned same CRC, are you taking this value from the console?
PPS: The CRC is the inverse of SLUS (In the sense a code might work for a certain game's SLUS and fail for the same SLUS in another game), the code might work for different CRCs, then CRC is not used to identify the games in those sites also, it uses a long code to unequivocally identify the game, but that is only informative, this long code has no meaning for PCSX2.
Code:
To understand what is important for cheat codes one must understand the cheat codes do not care for the game's version or even for the game's name at all... all that matters to it is the memory data space. That means the code instructs PCSX2 (or whatever cheat engine) to poke a value at determined address offset and it will do it, does not matter what is in there and why.
The SLUS (or similar identifier) might have that data space shifted or altered between releases, so it is not sure indicator the addresses are what to be expected.
The CRC might change if any change in the game's total structure happens even when the data structure and position is not affected, so a code could work even if the CRC doesn't match.