Normality of residual is violated, How to fix it properly?
Use Bayesian regression. It's much more flexible on its assumptions, and much more powerful in its outputs. You'll find that you have to be much more explicit about your assumptions, and you'll have to quantify them.

It's much harder work, and all the work you do, will be valuable.

Normal regression makes it very easy for anyone to do really bad science.

Bayesian regression makes it harder to do anything, but makes it much easier to do good science.