Thanks for clarifying. But I think that's the same thing in the context of the FSF's thinking. I believe you are arguing that missing freedom 0 implied a sort of compatibility with the non-commercial restriction (this is the argument from silence I referred to earlier). But from what I see, the incompatibility of non-commercial restrictions is forced by the logic. Freedom 0 was almost surely an attempt to clarify confusions and make explicit an implicit assumption.
There are really two issues here: one is what counts as copyleft (i.e. the ideal FSF license) and what counts as compatible with copyleft. The so-called permissive licenses like MIT and BSD are compatible with copyleft licenses in a way that licenses that restrict commercial access aren't. That's because these licenses don't add new restrictions but the non-commercial one does.
The abstract idea of copyleft is that it's a chain of rights grants A > B > C > D... where entities on the right have exactly the same rights as the entities on the left. In other words, copyleft preserves downstream freedoms, or ">" is a freedom preserving operator for copyleft software.
A permissive licensed piece of software X can be incorporated into copyleft software, say, B because X does not restrict any freedom required to be free software. However once incorporated, the chain becomes absorbed, you can't un-free the free software. So X >' B where >' is a sort of injection operation, but then everything downstream of B uses the ">" operator. X can also spin off proprietary copies of itself. Those are not compatible with free software, but they exist on a different branch of the rights grant tree and so aren't relevant to free software.
On the other hand a license with a non-commercial clause includes a restriction already. It's not a hypothetical restriction that someone else can add to a fork (as in permissive licenses). You can't take a license with a non-commercial clause M and map it into free software because, as you granted, free software includes the right to sell and the license doesn't grant the right to remove the non-commercial restriction. If it did grant the right to remove that restriction, then a fork that removed the restriction would possibly be compatible with free software.
What your argument amounts to in this framing is that even though A has the right to sell copies of the software, ">" doesn't have to preserve that right. This would require a stronger argument IMO, since (1) the freedom to charge is explicitly mentioned early even if it's not explicitly enumerated as one of the four freedoms yet, and (2) we have no examples where the FSF allows an entity on the left of ">" to terminate rights on the right of ">". That would break ">" as an operator.
There are really two issues here: one is what counts as copyleft (i.e. the ideal FSF license) and what counts as compatible with copyleft. The so-called permissive licenses like MIT and BSD are compatible with copyleft licenses in a way that licenses that restrict commercial access aren't. That's because these licenses don't add new restrictions but the non-commercial one does.
The abstract idea of copyleft is that it's a chain of rights grants A > B > C > D... where entities on the right have exactly the same rights as the entities on the left. In other words, copyleft preserves downstream freedoms, or ">" is a freedom preserving operator for copyleft software.
A permissive licensed piece of software X can be incorporated into copyleft software, say, B because X does not restrict any freedom required to be free software. However once incorporated, the chain becomes absorbed, you can't un-free the free software. So X >' B where >' is a sort of injection operation, but then everything downstream of B uses the ">" operator. X can also spin off proprietary copies of itself. Those are not compatible with free software, but they exist on a different branch of the rights grant tree and so aren't relevant to free software.
On the other hand a license with a non-commercial clause includes a restriction already. It's not a hypothetical restriction that someone else can add to a fork (as in permissive licenses). You can't take a license with a non-commercial clause M and map it into free software because, as you granted, free software includes the right to sell and the license doesn't grant the right to remove the non-commercial restriction. If it did grant the right to remove that restriction, then a fork that removed the restriction would possibly be compatible with free software.
What your argument amounts to in this framing is that even though A has the right to sell copies of the software, ">" doesn't have to preserve that right. This would require a stronger argument IMO, since (1) the freedom to charge is explicitly mentioned early even if it's not explicitly enumerated as one of the four freedoms yet, and (2) we have no examples where the FSF allows an entity on the left of ">" to terminate rights on the right of ">". That would break ">" as an operator.