I know that while I worked with digital goods, I was very intrigued by and pursued some challenges for fun when they weren't the best way to increase my income. The developers who are curiously attracted to the challenges you seek to overcome may be better than a less-interested but better programmer.
(Full disclosure: I skimmed your post, but the advice I'll give you is universal.)
- Look for someone mature and experienced. You said you gravitated to the college student. I strongly recommend against that. You want someone who has built a ton of products like yours before and can iterate fast. You also want someone with real success stories on their resume who can act as a strong source of wisdom. Always try to partner with someone from whom you can learn a lot.
- Having lots of time is incredibly important. If your product isn't her top priority, your CTO is going to become your bottleneck. You want someone who can go without a salary until you (ideally) make money or (less ideally) raise money.
- This is minor, but stop calling the person a CTO. Until you have lots of employees, you're not chiefs of anything. You're looking for a technical partner or technical co-founder.
- What is your product? Come up with a vision and plan for MVP, and then recruit a technical co-founder. A lot of the best technical people are drawn to the vision, as well as access to an interesting market. They don't care much about money. If they wanted it that much, they'd work for one of the large tech companies.
I have to take certain steps, or just start working part-time with them, not forcing anything, so that one will eventually get rid of his other responsibilities to work with me.
What do you think?