Fenway Park is actually a bit of an outlier. Wrigley Field also counts. Both of these stadiums are in dense urban neighborhoods and not surrounded exclusively by acres of surface parking lots.
Publicly financing a stadium in that setting might actually be a net positive (plenty of other factors) because all of the spectators are walking through the neighborhood with all the shops, restaurants and bars just to get to the stadium.
Baseball teams play 81 games per year in their stadium. American football teams play 8. That is also a huge difference. There are many stadiums that host both hockey and basketball and thus have 60-70 games per year - plus concerts and other events on top of that. Utilization matters! I don't know if they do anything in winter at Fenway Park, but at Wrigley Field there is a neighborhood ice rink in the winter time. The skate rental/lockers/bathrooms, warming station, concessions, and even Zamboni storage are all inside the stadium. Here's some rambling video showing what "hanging out at the stadium" looks like even when no sport is happening:
https://youtu.be/-pgnR7FqkDo