Great project! I'm really enjoying following along with your progress.
Just some comments from an artist (not an electrical engineer); the metal box to me looks very scary if it's not grounded. My kiln draws ~22 amps and I made sure the exposed metal sides of the kiln has a good ground path to earth that will easily dump enough current to allow the main breaker to go. (checkout ground bond testing)
It looks like the AC power runs very close to the TC cable? to reduce noise you could try and keep the AC line away from the TC cable and also using a shielded TC cable. The TC anomalies (open / short) could be linked to the i2c library? the library not accounting for clock stretching maybe? as a workaround you could discard the values and perform another couple of temperature readings after a short delay and only branch your logic if multiple bad readings are present.
When i built my own controller I too was getting noise; what I did was i took a few TC readings and discarded the upper and lower values, then I did a check to see if the readings were stable within a +- 1c value; if not, I output a buzzer tick noise; this greatly improved my temperature readings, and what I noticed was on odd occasions and when my hot water boiler came on the ignition caused a lot of noise on the TC wires, the noise was enough to throw a reading wildly off, but with the software error correction logic it simply just waits a couple of powerline cycles and takes another series of samples, this for me works really well.
When I read up about PID for my own controller I didn't really understand it, so i just rolled my own code; I can't remember exactly how it works without checking the code but
the thermal hysteresis for me was only an issue at the kilns lower temperatures, after the kiln got hot it wasn't an issue, so my code logic just switched to a different mode when the kiln hits a certain temperature.
Not sure if that was helpful lol but keep up the great work!