I feel like you are choosing your own definition of commercial that's not generally used when talking about licensing. Generally, a non-commercial license is one which forbids you from using the creation as part of a money-making venture. The GPL does not do that.
As I understand GPL it has a provision to provide source code such that it may be modified by a recipient of source or compiled code. I can't find anything similar in CC-BY-SA [1] other than a grant that the recipient of compiled code may reverse engineer that code if they desire so long as anything that person adapts is also shared under a compatible license.
[1]: https://creativecommons.org/licenses/by-sa/4.0/legalcode
It's true that CC-BY-SA doesn't include the source-code-provision provision of the GPL, because it isn't intended for software, and it isn't clear what the source code for, say, a photograph would be. A PSD, maybe; but what about the RAW from your camera? What if you don't shoot raw? Are you obligated to include documentation of the photographer's lighting setup in order to redistribute? Their thinking about the framing? Shots from the other angles they tried that didn't work out? Such considerations would probably have resulted in SA works being impossible to legally redistribute in practice, so the license doesn't impose them.
There's certainly an argument that selling support for software you didn't write (or didn't write in large part) is 'bad'. I also believe that if you are selling the (free/gratis, GPL) software without support you're not going to be in business long.
And all good points on the differences between CC & GPL, my only point was that selling compiled CC-BY-SA binaries provided security-through-obscurity level protection from someone reselling your product (when paired with trademark protection).
Thank you for all the things to think about!
And of course with AI models you could post a AGPL version publicly and sell more permissive licenses.