I think @unor's answer demonstrates that what you're asking for isn't bona fide "open source" any longer. But it certainly seems like a reasonable thing some programmers might want to say -- i.e., "Hey, if you're making money off my hard work, then I want my fair piece of the pie." So, one way to accomplish that might be to just write your own license terms in a comment block at the top of your code, e.g.,
/**********************************************************
*
* Copyright (c) 2017, Your name here. All rights reserved.
* Released to the public domain only for use that is both
* (a) by an individual, and (b) not for profit.
*
*********************************************************/
Okay, so that's probably a bit too terse, but you get the idea. And to repeat myself from above, I'm surprised that, judging from the above answer, there's not already a more formal not-so-open-source license embodying your request. Seems completely reasonable to me.