One of the differences is the Blues played the bulk of their season in front of fans, with just the postseason switched to the bubble.
Baseball played zero of its games in front of fans, until just now in the championship series, and a limited crowd at that.
The other thing is what you mentioned -- the cap.
There's one in hockey. Not one in baseball. It means there isn't a set line in baseball for payroll where teams can be called out by fans for not hitting the line.
The Cardinals traditionally have been among the higher end of teams in terms of payroll. It's why cries of "cheap" have never made much sense -- and why looking into money that was misspent makes more sense.
The other thing to remember, and I'm sorry for beating the dead horse here, is that there is labor strife going on in baseball. The collective bargaining agreement expires after the 2021 season. Players want more. Owners are insisting they don't have more to give, especially after the pandemic. Its politics, and it's not done with the fans in mind.
Meanwhile hockey ironed out a new CBA during the pandemic. Not bad for a sport often criticized as the "garage league."
All of these factors are going to be in play when you compare NHL to MLB at the moment.