Business won't be the one to push the change on this attitude. It has to be people, or at best government. Most companies are morally agnostic, they only follow the money, you can judge them for it either way, but it's the truth.
What do you think makes companies do what they do? Companies consist of people. There are still people making these decisions. Many companies have taken ethical stances wrt China. Many more have not. Companies don't just get let of the hook because they're companies.
It has to be people pushing companies to do it. Which is why it is exactly counter-productive to post "Of course companies won't do anything" when a person is demanding a company do better.
In a sense, yes, but someone, somewhere had to be the one to say "we could be courageous, but let's softpedal this and come up with a lame excuse". They also (perhaps with others) had to build a culture where people know they can't speak up on it.
Of course, there's a question of causality. Are businesses "morally agnostic" because they choose to be, or because the ones that aren't don't survive? Companies that say "we don't do business with places that harvest organs from prisoners" will struggle against ones that say "we were able to cut the price of our phone 50% by doing business with (said regime)"
This would actually be a good reason to impose import duties on those places - to make goods from ethical regimes more competitive.
I'd say "only following the money" isn't moral agnostiscism, but very much a moral choice. It's a choice made by people collectively, and either way it doesn't exist outside of morality, or consequences.
Because that's pushing the line further and further of what the CCP can make people accept.