Thank you for the interesting question, Jacqueline.
고맙다 is of course, as you said, the infinitive of 고맙습니다 or 고마워,
but it is also a type of variation of the verb, so please think of it as a
set phrase that you can say to your close friends, it's the same meaning
as 고마워.
This is not as complicated as it seems at first, and you will naturally
understand how it's different in nuance from the dictionary infinitive.
Again, practice makes perfect
You can't say 저는 고맙다,
and even 나는 고맙다 is unnatural.
The subject of "고맙다" is of course " I ",
but you don't say it. Just like you don't need "you" when you say
"Wait a second!"
고맙다 is 반말(infinitive casual), and 감사합니다 is 존댓말(polite, formal),
so 감사합니다 should always go with 저는
and 고맙다 should always go with 나는 ^_^
But simply 감사합니다 or 고맙다/고마워 is just good enough ^_^