You should define some "Order status" which can't be deleted by user (ie, Paid, Shipped or Completed and let admin define when to reduce the inventory by the status (Paid, Shipped or completed). (but also need to allow admin to create custom status.)
If the order is cancelled (status=cancelled), then restore the inventory. If there is no setting for reduce inventory and restore inventory, then abantecart will not handle the inventory. Then we can handle the inventory manually. This is more flexible.
Coming back on item #1. Conceptually it is not very simple to handle stock return. This will require implementation of RMA extension.
It is based on the policy how each merchant handle stock management.
If you cancel the order and stock is returned to the total count, and later you decide to complete the order. What should happen? There is a lot to validate here and it can be a mess.
Clean way to do this is implementing RMA and return process will handle stock return to total.
Any thoughts?