I have always thought that there is just one town, called by both names. If you do a search on Goggle maps, both names point to the same town (the little town with the elk antler arch in the town square)
Jackson is the name of the town which is the county seat of Teton County, WY. Jackson Hole is the name of the name of the valley in which the town is located. The two are often used interchangably.
A similar situation occurs in my local: Berkeley Springs, WV. The maps show Berkeley Springs and the post office is Berkeley Springs but the actual incorporated town is Bath, WV. I am not a native but it is my understanding that long ago, in the days before zip codes and we were part of VA, since there was already a post office in VA called Bath, they had to call ours something else and our post office was named Berkeley Springs.