We support several different shopping systems on different hosts and they vary in their capacity for catalog size.
You are using Woocommerce hosted on WP Engine , so I will keep these comments limited to that specific combination.
In woocommerce it does not matter whether a product is draft or published, each product and each variation counts as one item that woocommerce needs to manage. If they are in Woocomerce, they are taking up space in the database.
We are currently seeing around 100,000 total items (products AND variations) in your woo catalog. Now I don't want to say that Woocommerce as a system cannot handle that many or more items, but you need to throw a lot of server resources to make that many items work well. The size of the catalog has implications for how fast thing can be accomplished by your server, which includes working in the admin area on products. This also affects how long it takes the integrator to save a new product.
My personal opinion is that when you get much beyond 50,000 total items, Woocommerce starts to slow down considerably. Note that this is my opinion only. there's no specific guidelines on how large a catalog woocommerce can successfully handle. We normally do not make specific recommendations because the available computing power can vary greatly from host to host and from server to server.
But that takes us to the other limiting factor here and that is WP engine. In order to protect performance of their sites, they have a rule that kills any script that takes longer than a certain amount of time to run. I'm not sure exactly what this limit is, This is a sensible thing to do in a shared environment because a bad script that takes too long can take over a system and prevent visitors from seeing pages (for example). But that also puts an upper limit on how long any process can take before it gets cut off by WP-engine rule, and this is what is preventing us from added new products. From what we have seen, this is an issue specific to woocommerce sites hosted on WP engine, and yours has the largest catalog we have seen on a WP engine hosted woocommerce site.
Another part to this is that your POS is RICS and you sell shoes. We get from RICS the entire size grid when the product comes to us, which we by default pass on to woocommerce.
In OUR database we have all the items we ever got from RICS for you. That currently totals 17,398 styles and 145,251 variations (which includes every size in the size run whether or not you have inventory) I also see that 140,000 of these had been sent to woocomerce at some time in the past, so nearly 40,000 items have been deleted from woo already. Note again that this is total variations, not how many styles (products)
However, if we count only products where you actually have inventory, there are 3,481 styles with 10,249 total variations.
So if we were to limit to those that have inventory, that's a far smaller amount of products, and I believe things would be sailing along with no issues. the down side to this is that products do not go over to woocommerce until you have inventory, so it's tough to set up products ahead of them arriving in the store.
The other possibility is that you could control what products come over to woo on the RICS side. You may have this set up such that everything you set up in RICs comes to us by default. But it's possible to manage what goes to your web site within RICS so that you can keep unwanted products off the site.
The bandwidth with modern retail has nothing to do with the problems you are seeing. It's all on the capacity and response of your server.