Your conditions are not "open source" so you will not find an open source license that has those conditions. Specifically, disallowing the publishing of modified versions of the code makes it impossible to incorporate your code into other open source projects. As an example of this, many Linux distributions will make modifications to libraries and applications so that they fit the distribution's naming or other conventions. If you disallow the re-distribution of modifications, then such changes will not be possible.
I also don't know of any open source license which explicitly prohibits commercial applications. Most commercial software is also proprietary, and it's typically the proprietary nature of it that precludes the use of many open source libraries.
So if you really want those conditions, then I'd say you'll need to find a lawyer to write a custom license for you.