Unfortunately there's a reason why password managers still require a passphrase. It's simply not secure to store the key anywhere near the secure files.
I'm not saying password managers are perfect--they have their own security issues--but it seems that you're attempting to closely mimic that functionality (except for data instead of passwords) while removing the requirement for a passphrase. I would investigate the security model of some well respected password managers as a foundation to give you some insight/inspiration.
I like the idea of storing your key on a flash drive--it seems to be the best suggestion here so far, but honestly that probably won't be much more secure than simply writing your passphrase down and keeping it in your wallet.
Trusting a device or piece of paper also has a steep downside: it can be lost just as easily as your memory--maybe more easily. Depending on a device and then losing it is just as devastating as forgetting the passphrase so this doesn't really meet your requirements given the inspiration behind this project.
Storing your password somewhere in the cloud as a backup can be a form of poor mans two-factor authentication/password recovery. You can try to remember the passphrase (or not lose the device/paper), or you can remember your account details for the backup. Gives you two shots at recovery (three if the cloud service has a password recovery option).
Please note, however, that the more places you put the passphrase the less secure it is, but it sounds like you need "good" encryption with a near zero percent chance of losing the encrypted data, as opposed to "great" encryption with a high chance of losing the encrypted data. The more secure you need it, the closer you approach needing a brain-memory only long passphrase that is (for some) easily forgotten but impossible to extract digitally.
Back to your implementation, I agree with the advice that it's best to keep the passphrase/key separate from the binary. I would start by investigating "non-lose-able" (technical term :P) and reasonably secure methods of storing that passphrase separate from the binary (and even the system that stores the data) as a priority over the encryption software itself. See how that works with existing encryption solutions, and then make the encryption "phase 2" of your project.