7555 adsr sustain not falling entirely to 0 when key is held

Just to make sure it’s clear: Normally “sustain” means the typically nonzero level you get after the initial attack/decay and before the key release. You can set the sustain level to zero, though, in which case you’d expect decay to zero while holding the key down. Is that what you mean?

Also when you say “7555 ADSR” what specifically is the design you’re working with? Presumably one based on a 7555 timer and not a digital envelope generator chip.

The sort of thing you describe is not uncommon with analog envelope generators. The problem is that the envelope voltage is created by charging/discharging a capacitor, and there are diodes on the charging and discharging paths. Once the voltage drops below about a volt the diode conductance goes way down and it can take tens of seconds or more for the voltage to decay from there to (almost) zero. Kassutronics has a design that avoids that using precision rectifiers but it’s probably intrinsic to the design you’re using.