At least with Store, you could do this but it will require some custom development. Out of the box with Store, each MSM site is completely separate and you can't sell items across sites.
However, there are plenty of extension hooks which would let you access the items across sites, and add a site-specific mark-up to the prices.
The other two big names in EE ecommerce are Expresso Store and Brilliant Retail.
Store has recently been taken over by DevDemon and is being actively developed by them.
BR is also still in active development, but does things a little differently from Store and CT.
Helpfully, BR has a demo store online to test (front end and back end). From my experience, ...
No doubt there's a hundred ways to do this - but I think you could do it with CartThrob as well - especially since I think they've recently implemented MSM.
"They should be able to also see the purchase cost of the inventory items, set their own pricing for the inventory items (ability to do this via bulk would be great, like "20% profit for all items in ...
You may get some of the way there with Profile:Edit or Zoo Visitor in that they abstract out member management to channel entries so you would be able to READ members from front-end templates using their module tags along with native EE channel entries tags.
You could possibly CREATE members from the front-end too if — in the case of Zoo Visitor for ...