There are many points in the design space.
* There is a pure Semigroup1, which acts as an indexed semigroup, without the Applicative superclass, which is the Alt class in the semigroupoids package.
* There is a Alternative minus empty, which you've proposed here.
But then even within each of those options we have several choices.
The laws for how Applicative and Alternative relate are subject to all the same problems as the laws between Monad and MonadPlus and the situation doesn't get any better here. catch vs. right distribution rears its head all over again.
The empty laws, which get much more complicated on the Alternative front at least don't show up.
Finally, there is another discussion this proposal may actively interfere with that has frankly, a lot more traction: What to do with 'fail' in Monad. Lennart has been a rather vocal proponent about finally doing something about that situation. To produce a viable MonadFail story one very solid path would be to lift the question up to the Applicative level, at which point in time, moving fail to an mfail in side of a class that depends on Applicative may be a good home, but that is more or less switching to a unit-then-add-an-associative operation style, rather than this.
With Applicative as a superclass of Monad we were asking folks to adopt an abstraction they had already accepted and used for several years.
With Semigroup as a superclass of Monoid, the abstraction has already seen many years of productive use.
Haskell is remarkably bad at dealing with very fine-grained class hierarchies.
With all of that in mind, I'm personally -1 on this addition. I don't think it rises to the level of traction needed to ask everyone everywhere to change all the code that they have ever written that involves MonadPlus, when the design space remains as large as it is.