I understand that but with descriptions such as bitter/harsh we immediately thought of mash pH due to roasted grains. Water chemistry can change seasonally as well. If you believe over-attenuation is a problem have you tried using different yeasts?
I mostly used harsh/bitter by way of saying the beer was too dry and the roasted-ness stuck out too much. Instead of having some sweetness to balance that out.
What I'm saying is
everything I'm making with this mash regimen is attenuating well above what I'm expecting. French Saison, Belgian Ardennes, Witbier, Whitbread, etc...