I would argue that the major reason for MLB's impending decline is the severe lack of parity between all the different franchises and not affordable seats and concessions, although it is a factor to a certain extent.
Everyone knows MLB is rigged to a certain extent with all the big market teams getting all the good players eventually, because they have unlimited resources compared to the mid and small market franchises. That turns A LOT of potential fans off. Why should I watch and root for a franchise that will ALWAYS be at a major financial disadvantage to the Dodgers, the Yankees, the Mets, etc.? I'm sorry, but MLB either commits to a salary cap at some point or this league slowly dies, it's inevitable. It is going to be a slow death, and it will likely accelerate as the baby boomers and their long adult kids age out, but eventually the fans drift away and it drives the sport into the ground.
The other major factor is length of games. This subject has been beaten to death here on the forums but it is 100% true. MLB needs to stay on it and keep the games to 2-1/2 hours or less. Prior to 2023 / 2024 the length of games had reached absurd levels, of 3+ hours which honestly was ridiculous. Very few of us in our busy lives can consistently follow a sports team for an entire season (which they rely on for revenue) and watch 1/2 or even 3/4 of the games. It's just not practical when you have family obligations, a job, etc. Each game 3+ hours during the week? Not gonna happen. MLB needs to adapt to the modern era or it will continue to loose fans and eventually disappear altogether.