Ich würde sagen: Thanks for letting me stay at your place for three weeks.
Die Form "Thanks/Thank you for sth." ist gebräuchlicher und macht es einem in Bezug auf die Zeitformen einfach, denn das "sth." muss ein Substantiv sein. Das heißt, wenn wir uns für eine Handlung bedanken wollen, dass wir einfach das Gerund einsetzen können. Dabei müssen wir uns (fast) überhaupt keine Gedanken um Zeiten machen. "Thanks for letting me stay at your place" können wir sowohl für die Zukunft, die Gegenwart und die Vergangenheit nehmen. Welches davon gemeint ist, erkennt man entweder aus dem Kontext, oder man kann eine Zeitangabe einfügen.
Da du hier jedoch um eine Hilfe zu Zeitangaben gebeten hast:
Das Present Continuous wäre die beste Variante, denn wir gehen davon aus, dass du diesen Besuch aus der jetzigen Situation heraus als sicher annimmst.
Thanks that you'll letting me stay...
Das geht von der Grammatik her nicht. Nach "will", und nichts anderes ist das 'll dort, kann nur ein Infinitiv folgen, aber keine ing-Form.