Yes, "being the good guys" is not rewarded in the system. Any reward happens external to the system (at least any reward that can't already be achieved by
lying about it, i.e. having a PR budget instead of morals). That does not make "being the good guys" bad, it just means if we want people to be that, we can't have that under the system we have.
Founding a co-op arguably avoids some of that but as you correctly point out there is little incentive to do business with co-ops if you have to (or want to) act optimally within the system (which depending on your resource constraints can mean "being able to feed yourself and continuing to have a roof over your head"). This is why co-ops are somewhat incestuous: there are for example marketing co-ops which primarily do marketing for other co-ops, which in turn prefer paying co-ops to do their marketing, because they're all in the same boat. Alternatively many co-ops target the public sector or municipal governments as they're less profit-focussed and instead often hire for things co-ops can more easily guarantee (e.g. avoiding child labor in supply chains, "green energy", various sustainability metrics etc).
You can't outcompete unethical businesses when being ethical is a competitive disadvantage. No matter how many regulations we bolt onto it, the system will always reward those companies that try to game them rather than those that genuinely believe in their stated ethical goals. Of course that doesn't mean the regulations are pointless: often trying to do the bare minimum yields better externalities than not doing anything at all.