<No soy abogado>
Todas las licencias mainstream (GPL, MIT, BSD) permiten de algún modo el uso comercial de un programa. GPL no está en contra de que vendas el acceso al software, sólo controla el acceso al código fuente; y una licencia open source incluye los fines comerciales entre sus derechos. Posiblemente una licencia que no permita comercializar el software no sería aprobada como licencia open source oficial y por ello sería menos conocida.
Dicho eso, al final como autores del programa siempre podéis poner vuestras propias excepciones. Hay software que lo hace. GCC está distribuido bajo la GNU General Public License, pero tiene una excepción que dice que mientras tu compilador de GCC esté bien licenciado (p.ej, tengas acceso al código fuente de GCC y demás), puedes usar GCC para compilar y enlazar programas privativos incluso aunque enlaces partes de la libgcc en tu programa: https://en.wikipedia.org/wiki/GPL_linking_exception.
O si no siempre te puedes inventar tu propia licencia. Al final es un papel con normas. Vease la No Harm License: es una BSD-3 modificada con excepciones que te prohiben usar ese software si lo vas a hacer para cosas como dañar el medio ambiente, causar violencia o hacer daño a las personas.
</No soy abogado>