The "reset of the scale" flips and destroys my normals
It should work to duplicate your object, before applying scale, and use a Data Transfer Modifier to transfer the custom normals from the duplicate object to the corrected object:



Hopefully that does the trick.