I realized that always telling him what he needs to do won't be good for him
直訳的な、going ahead and intrudingとかはわかりにくくて、「先回りして口を出すこと」をalways telling him what he needs to do (彼に、これから何をするべきか言っておくこと)にしました。
息子の生活習慣についてつい先回りしてあれこれ言ってしまうこと、と言うニュアンスが伝わります。
こう言う場合の〜と分かった、は英語で〜気づいたみたいな表現にするのが自然です。
won't be for his sake
won't be good for him
彼のためにならない
一番目は直訳的で、通じない可能性はちょっとだけあり、
二番目の方が、「余計甘えてしまう」と言う意味が含まれています。
I realized that always telling him what he needs to do won't be good for him
先回りして口を出すことは彼のためにならないと分かった
ご参考になれば幸いです!