As you wrote, there is no problem to remove the combination with 0. I already gave an example of how to do it in the forum. Programming a module that automatically checks availability when updating a product is a matter of a maximum of an hour of work.
I will see how much time I can save tomorrow and possibly program the module.