Yeah, it could have gone bad, but, any chance there's a short somewhere on the 6504's socket, or an output being sent to something that only the 6504 itself should output like address lines?
If you pull out the 6504 and put it on a breadboard and give it +5V and GND, does it also heat up? I'd worry about these before replacing the 6504 with another - if something on the I/O board is causing it to fry, it will damage the replacement too.
Sadly, yeah, 6504s are rare. They're just 6502s with extra I/O lines, but ofc you can't easily replace them with a 6502.