famous forはbe famous for~で有名である
here forもbe here for~のためにここにいる、という熟語です。
上記のような熟語としての結びつきの強さがそのまま疑問詞
もくっついてきたと考えられます。
How long have you been here?だと、(現在まで)どのくらいここにいるの?でいいと思います。
私の推測なのですが、
How long have you been here for?だと、どのくらい何のためにここにいるの?みたいな若干ニュアンスが変わってくるのかもしれません。あくまで推測です。
英語を専門にしているわけではないですが、私はニュアンス的に解釈しています。
How long の文の for は、~の間 って解釈します。たぶん無くても大丈夫な気がします。
たぶんこの文の解答は、 I have been here for two hours. (?)「私はここに、2時間います」とかになるでしょう。この解答の for と同じ関係かと。
後者は、famous for ~ で一つの意味「~で有名」って解釈します。