1 - Baseball games have been too expensive to attend for families to go on a regular basis (5 or more games a year). Then kids don't grow up with baseball, and the sentimental bond is not formed.
2 - There are far too many other options for entertainment all year 'round and the younger people today would rather watch other people play video games than real athletes play baseball.
3 - Baseball has not promoted it's stars properly. Regular people would not recognize Mike Trout or Aaron Judge or Jacob deGrom. Back in the day even my mom knew who Reggie Jackson was. She knew who Nolan Ryan was.
4 - Financial Competitive imbalance. Seems like for long stretches it's the same 6-8 teams that are at the top and most of the rest of the league really has no shot. And even some teams who are consistently good like Tampa Bay and Oakland keep trading star players away as soon as they might be due more money, so they never really get over the hump and fans have a harder time bonding with a star player when they know every one of them is leaving. Baseball feels like the Big 6 and the little 24.
5 - Games are too slow. Part of it is sabermetrics and too many pitcher switches, but of it is the need to cram more breaks into the game to get more ads into the broadcast. Baseball has always been slow, but not like this.
6 - Little league baseball has gotten too corporate with travel teams. Black kids have virtually no connection to baseball anymore and you see the MLB numbers of black players dropping fast. Kids like many of us, who weren't very good at it, could still play on a little league team. Well now it feels like over the age of about 11 that if you are not good enough to be on a travel team, then you don't play at all. Again, no sentimental bond is formed.
7 - Home Run or Strike Out. When I was a kid you drew a chalk box against the school wall and played with a tennis ball...........You either missed it or hit it over the fence. That's what baseball is feeling like now. It's boring.
8 - Fire Ausmus.