My theory, and it's only a guess of a theory, is that it is a combination of two reasons, in no particular order.
First, there really are very few stars in the NFL: some quarterbacks, some wide receivers, some running backs, some kickers, *maybe* a safety or two. Most positions are filled by players who are very good at what they do, but who are not individually lauded for it by the fans. By contrast, every position in MLB has its star(s), and there are few different positions in the NHL or the NBA, so there are more individuals that fans would want to see perform. (That no one from the two best teams is in the game doesn't help any.)
Second, pro football is a bruising sport, just this side of the ancient gladiatorial bouts. The Pro Bowl by definition is NFL Lite, where players do not wish to hurt each other at the end of a long season; this is good for the players and good for the league's games-that-count in future seasons, but boring for the audience.
Your last paragraph is the main reason. It isn’t really football, and has little to no benefit to winning — especially compared to the risk of getting hurt or hurting someone.