Free tools are perfectly fine for business use. You just have to freeze it at version x.x.x and carry on.
If only it was that easy nowadays!
The problem with MCC is that it's a continually shifting quicksand made up of hundreds of different components. Creating a "gold" build install and aligning all component versions is thus easier said than done. Not only that, I am not convinced it's even possible to create a development machine anymore for some use cases as components are maintained in the cloud, and aren't directly downloadable as a good old fashioned files as far as I know.
As an example, I had a problem with a build recently where I could no longer debug the build as the debugger firmware component had broken. In the end I had to use a Python script to retrieve the otherwise hidden, but working, earlier version of the component. It's only a matter of time before no level of hackery will work for these situations anymore due to bit rot.
Furthermore, if you use the paid XC compilers, HPA licences now expire. So one day either your build might not fit anymore, or that essential optimisation tweak will break your build. Until a couple of years ago, you could continue using the same version of compiler ad infinitum, it just wouldn't support any newly released devices.
Unfortunately, a side effect of well-meaning modern software methodologies is that bit rot is an intrinsic part of the long term development cycle nowadays.