The Max's problems had nothing to do with stall. The larger more forward nacelles caused shifts in the aerodynamic neutral point, only discovered during testing, that had an effect similar to shifting the center of gravity aft, and if you were holding a certain amount of stick force, say in a turn, keeping that stick force in would cause to nose to drift up unexpectedly. This happened in certain configurations and speeds. It was as if a whole bunch of passengers suddenly moved aft in a group and you were holding 15 pounds of back pressure and suddenly that back pressure would make the nose rise when you didn't actually change anything you were doing, and you would have to ease off some of the back pressure to compensate.
The behaviour in itself did not prevent the airplane from being certified if pilots were trained to recognize it. But it was enough of a deviation from the other '37s behaviour that it put the common type certification at risk. This results in a very expensive supplemental training burden on Boeing's customers. MCAS was a software bandaid that used the trim system to make the airplane's behaviour mimic other 737s in the particular regimes where this was happening.
Boeing used an even stranger software bandaid on the 787-8, where the FBW system actively runs the normally dormant outboard ailerons to fix a wing vibration problem. In the age of FBW this isn't all that controversial.
Anyway, there was a very fatal defect in the architecture of the system where it took data from only one AOA vane, because whoever did the system safety analysis decided that the failure mode where the system malfuntions due to defective AOA input was a low criticality failure (I think it was only classed as Major, not Hazardous or Catastophic). It was classed as being equivalent to a stab trim runaway and depended on the HSTAB QRH procedure to deal with.
This allowed a mathematical risk justification for taking a signal from only one AOA vane. This helps with system dispatch reliability, because if you have dual inputs and must have both, that's "anti-redundant" from a dispatch reliability perspective (two inputs are half as reliable as one). Changing the system to have only one input doubles your dispatch reliability and if it's considered not that big a deal safety wise, it makes sense to do so. That's the main motivation for doing that single input architecture even though it was only more or less wiring and software differences.
The alternative to MCAS would have been physical redesign, maybe moving the operating CG forward which would have required a larger tail, or some other physical change, maybe something to the nacelles that would spoil the lift they were creating, that would've driven costs up and made the airplane way less saleable, and it would probably have killed the program.
In any case, notwithstanding all the other cockroaches that have scurried out from under the rug as it was lifted in the investigation, if Boeing had taken signals from both AOAs and lived with the need to put up with dispatch delays caused by having dual inputs where both must be present, none of this whole fiasco would have happened and it would be merrily doing its thing. The safety analysis that was used to justify a single AOA input (and the FAA's failure to catch it) is at the root of all of it, in my opinion (having participated in supporting roles in similar crises with another OEM over the years). Too bad really.