I should tell it to you in person, but let me e-mail for now.
「直接」は in person があります。
「本当は直接伝えたかった」の時制は文字通りには I should have told it to you となりそうですが、 気持ちは「今の時点で」本当は直接話したい、ということなので単純な現在形で
I should tell it to you
とする方がいいでしょう。
for now は「とりあえず」という感じで急ぎであることを表します。
Let me 〜 を使うことで、「(先に言って)ごめんなさい」というニュアンスが出ます。
I wanted to tell you this in person but I decided to email you instead.
直接言うことを、tell them in person と言います。
直訳ですが、
I wanted to tell you this in person but I decided to email you instead.
直接伝えたかったのですが、メールにしました。
instead
~のかわりに
メールで先に言ってごめんなさい
I'm sorry I had to say this in an email.
という感じで訳してみました。
どうでしょうか?
お役に立てれば幸いです!