After 3 years and if you’re confident that the rest of the brake is sound, my experience suggests it’ll be worn discs. Shimano discs seem don’t seem to wear down evenly across their face, but seem to scallop in from the edges. What this means is that there’s no pronounced ridge from wear and if you put new, perfectly flat pads in, they feel terrible, because until the pad wears to the shape of the disc, you’re only braking with a section of the outer part and innder part of the disc. You should be able to see the tracks on the disc if it’s this.
The other way to look it to find a known straight edge like a metal ruler or the sliding arm of a micro meter across the disc. You’ll see the scallop this way.
Ooh. I’ve just seen that you’re using hope rotors. My advice about measuring the rotors stand, but AFAIK, hope rotors are thinner than shimano. Since shimano use servo wave to modify the force through the lever, maybe the way power is being applied to the disc is in a sub optimal position?