You can absolutely charge for a product that is based on an open source project. A simple example is you charge for support of an open source project. However, you cannot tell users that they can't use the (unsupported) open source bits for commercial purposes without paying you. Doing so would not be allowed under any approved open source license.
> However, you cannot tell users that they can't use the (unsupported) open source bits for commercial purposes without paying you. Doing so would not be allowed under any approved open source license.
OSI approved open source that is. And you can tell users anything you want actually. What you can't do with OSI approved open source license is choose a license not approved by OSI, doesn't matter what it says.
But OSI approved open source is not true descriptive open source. SQLite, for example, is universally recognized open source, but not OSI approved. You can go this road and use a descriptive term and ignore OSI and its corporate backing.
The SQLite distinction is because it's public domain which the OSI doesn't consider open source mostly because "public domain" can have a somewhat funny legal status. https://opensource.org/node/878
So, yes, you can have an open source license that isn't OSI approved. However, leaving aside a few edge cases like public domain, there's pretty wide acceptance of OSI licenses as the population of significant open source licenses.
[ADDED:In practice, the FSF's list of free software licenses and the OSI approved license list line up pretty closely--with the exception of PD+source. If someone wants to argue that the FSF's list is the one we should go by, I'm not really going to argue.]
I do think it is potentially appropriate to have thoughtful discussion over whether the current open source definition is too narrow but I also think it is useful to have a generally agreed-on definition.
The first of the four freedoms of the free software definition is the "freedom to run the program as you wish, for any purpose (freedom 0)." This would include using the software for commercial purposes.
You can charge for the source even under an open source license. Open-source is about giving the user certain freedoms, charging is about getting paid.
see https://en.wikipedia.org/wiki/The_Open_Source_Definition for what qualifies as "Open Source"