Setting small goals has always helped me keep up the energy to move it forward. When you're working in really small time chunks, it's important to make sure you have something achievable to accomplish. You're not going to be able to do things like "finish the sign up flow" in one night, but you can do things like "finish the authByPassword() method" and still be moving forward.
As for the money aspect of it, that's simple, just don't spend any. Bootstrapping is all about doing more with less, so don't spend anything until you absolutely have to. When you do finally start writing checks, make sure you're spending on things that will have the highest impact.