I don't have hard evidence but I think one thing that has really hurt baseball in recruiting new fans (and keeping some older ones) is that almost all games are on pay cable/satellite/streaming.
As I recall in the HTS days, Orioles games were about half and half. Half on HTS, half on channel 20 or later channel 50 (I think). The same with Caps and Bullets games too. Of course, in the 80s, many games weren't on TV at all so 50/50 was a massive increase in being able to see almost all games. Nowadays though, other than maybe a few games on Fox 5, you have to pay to see baseball. The "free" ad-supported method is about gone, and some potential fans too.