In and Around Entrances to the Park:
West Entrance - West Yellowstone, Mt is the most popular place to stay when visiting the Park. It is just a couple of miles from the West entrance. It is also the best place to access other area fishing that is outside the Park such as the Henry's Fork, the Madison, the Gallatin and many other rivers, lakes and reservoirs. Following is the best link I can find for information on lodging, etc. It is https://www.destinationyellowstone.com. Click on the "Sleep" option and then click on either the "Lodging" or "RV/Campground" option and you will find a "search" box where you can enter a number of options to find accommodations that meet your needs.
If you are a serious fly fisher, you can also find accommodations in and around Island Park and Last Chance, Idaho which is just 35-40 minutes southwest. Here is a link to lodging options as recommended by Henry's Fork Anglers https://www.henrysforkanglers.com/lodging-options.
North Entrance - Gardiner, Mt. is the place to stay if you plan to fish the Yellowstone River outside the Park. Here you will have good access to fishing in the northern part of the Park as well. Places like the Lamar and Slough Creek and much of the Yellowstone are much closer than West Yellowstone. I have driven through town a number of times but do not think I ever stopped so I have no recommendations. Here is the link to the fly shop in Gardiner if you want to talk to a real person https://www.parksflyshop.com...otherwise, a google search is in order...
South Entrance - there is no town right at the South Entrance. The closest place is Jackson, WY.
Northeast Entrance - Silver Gate, Mt. is right at the Northeast Entrance and Cooke City is just a few miles up the road. I can offer no help or recommendations in this area.
East Entrance - there are a few places close to the East Entrance but your best bet is probably Cody, Wy (founded by "Buffalo Bill Cody") which is 52 miles from the East Entrance. Cody is a great little town with good lodging and plenty of things to do.