have eaten
普通の現在完了形です。
「食べてしまった」(今はお腹が空いていない)
have been ~ing
「ある期間ずっと~している」
という意味になります。
I have been eating cheese cake a lot since I was a little girl.
私は幼少時代からよくチーズケーキを食べています。
(Weblio Email例文集)
since や for 等を伴わないときは
「最近ずっと~している」
という意味になります。
I have been eating too much.
最近食べ過ぎだ。
I have been eating out.
最近は外食ばかりだ。
have been ~ing
現在完了進行形
といいます。
(書き忘れた)