I had this problem with education courses, but I found it was because I kept trying to be what other people wanted me to be, rather than doing what I really wanted to do. I've read it's very important for INFP's in particular to believe in what they're doing, I most certainly find this to be the case.
I also find, like Kyuuei said, that sticking to one project at a time can really help.
My own personal reason for this is that I simply can't focus on creating too many goals or habits at the same time, and if I don't achieve all of them I feel really bummed, whereas if I just start one thing at a time and wait until it becomes habit or routine I get much better results. (I also get really bummed if I try to take on too much at once and don't achieve all of it. I actually trick myself all the time by focusing on one thing and then being really happy that I achieved it.)
Depending on what you're doing it may help a lot to devise your own reward system. Eg. One completed activity = one episode of my favourite series
I tend to find it impossible to administer my own consequences system, but feel uncomfortable with outside forces administering the consequences for me, so I find it much easier to motivate myself with rewards. Sometimes the reward can just be feeling good about having accomplished something if it's something that's really enjoyable like writing.
I've also found that with some things, if I'm not doing it it's because I feel guilty about doing something I enjoy when I could be doing something more practical; the only way I could stop the guilt about this was to sit down and say that I would only spend a little bit of time every Friday doing x activity, that way I knew I wouldn't get out of control or feel guilty because I was getting to do what I wanted but no one could say it was interfering with anything else.
Also, another thing that helps with some things like writing is to create a routine. It's quite a challenge to create a new habit but once you've set the habit it's easy to keep it going. I've read in a couple of places that it takes about a month to set a new habit, so if you aim to do the new habit once a day every day for a month, and don't freak out too much if you miss a day here or there you'll tend to find at the end of the month getting things done will be relatively easy. One of the problems with this of course is that you may not want or be able to do the same thing at the same time of day; sometimes it is easier to create a ticksheet and record your progress at the start or end of each day, that way you are doing something each day even if you can't always do it at the same time of day.
I think I am just about out of ideas, but I definitely have struggled with this. I read the INFP section in this really great book called Do What You Are, and it basically said that many INFPs struggle with rigid schedules and do better if they can find flexible work. (It was a career advice book.)
There is one other category of not finishing things that I am hoping to finally overcome, and that is where I my ability was growing faster than the stories I was finishing. So I would start to write a long story, but before I'd finished it I would hate it, not just in a crisis of confidence way, but in a 'I can see that this is terrible now, whereas before I thought it was wonderful!' This was defnitely a very frustrating phase to go through, but I think I've finally grown out of it. In my case I didn't have enough craft skills or life experience to write long stories well at the time, and my identity hadn't solidified yet so the issues that I would subconsciously put in one story would no longer resonate with me either.
Also there is one other thing - if I don't really enjoy a book I give up on it. The easy way to solve this is to borrow tonnes of books, shrug your shoulders about the ones that seemed promising but didn't turn out and just read the books that do hook you all the way. A really good book will have a grabbing opening, a middle that holds your attention and an ending that you look forward to and want to finish. Of course I'm talking about reading for pleasure, if you have to read for school try breaking the book down into sections, then designate each section to a day or time slot and reward yourself for finishing it. Taking notes can also help because you tend to forget info that you're not interested in. Sometimes it can be more fun if you're notes are done as pictures or mind maps.