I think the stretching you are referring to pertains to varying texel densities between UV islands or non-planar UV projections. Seeing that it is a flat face, the stretching can be solved by applying a uniform texel density to the blue frame area. This can be done by eyeing it using a UV grid texture, or by using a texel density tool for Blender.
To come back to the op's issue - I would cut the roof area with seams into smaller UV islands' seeing that you are using Substance Painter this should not be a problem. Unwrap the flat parts of the roof using view from above, and possible conformal for curved parts. In my experience with curved surfaces it is better to break it up into smaller parts that will not translate into curved lines when drawing straight lines through it. You almost have to approach it from an architectural/structural perspective on how it was constructed in the first place.
Warping happens when you are trying to squeeze too much flatness out of a curvy mesh. If you are trying to use a simple conformal unwrap approach or smart project unwrap it is like hitting it with a blunt hammer and expecting a clean result. Think of it as a pattern for clothing, except that the material doesn't like to stretch. Cut it into smaller pieces so that your curves can be better represented as flat islands.
Smart project unwrapping in Blender hides a lot of dragons if you don't cut sufficient number of seams into an object first.