Ouch. I'm not sure if this fixes your problem, but on Android I like to enable developer options and disable absolute volume to decouple the phone and speaker/headphone volumes, so I can use the device itself to turn down the peak volume (and hopefully noise floor) no matter how loud of a sound the phone tries to output. This might help ringtones, but probably not sounds generated by the headphones. Unfortunately this doesn't seem to be exposed by Apple for iPhones.