There was the agent suffix -ter- of PIE. It was used for creation of terms for relatives and for creation of agent nouns.
Suffix -ter- was used to create a noun for person whose function or profession was to perform the action (irrespective whether he actually did it) while the o-grade of it -tor- was used to denote a person who just did the action. The combination of suffixes -a̯-ter- was used for some relatives.
Thus the term for daughter in PIE was dhuġa̯tēr (ġ means uvular g).
The same suffix in zero-grade, "-tr-" in combination with inanimate ending "-om" was used for creating words for tools, such as a̯ero̯trom "plow", u̯estrom "wear", tere̯trom "auger", costrom "knife".
Thus regular PIE rules suggest that a combination of the root for laugh, "gela̯-" plus "-tr-" such as in "gela̯trom" should give a non-animate noun related to laugh. In Pre-Germanic the ending could change from inanimate -om to masculine -os to render (via metathesis) *hlahtraz in Proto-Germanic.
It is more possible though that the word by this same process was formed already after Germanic branch split of PIE because other branches, such as Greek in γελαστός does not show use of the -tr- suffix with this root.
By the way, of course, the PIE superlative -ter-os was also another use of the same suffix. Thus "gela̯teros" would mean "more joyful". The word "enter" (from Latin intra-) is another example of use of this suffix with adverbs: e̯en "in" + "-ter-om" -> e̯enterom "intestines", of which locative case is e̯enteri "inside".