I too tried Basecamp and a few others but nothing stuck. I found being accountable to other people is what keeps me on track. If one of my employees is waiting on me to finish a task so that they can proceed with their part then I am focused on getting it done on time, don't want to pay them to dick off.
Same goes for my clients, if I know I've promised them something on a certain day then I better move my ass. Really they are self imposed deadlines though, in theory they have no idea how long things take so I set the day for myself.
My best tip is to know yourself. If you know you are easily distracted surfing and goofing off then block those sites when you need to get shit done.
Do you work alone? That was always tough for me, no structure. This isn't my first company, but I did things differently this time. I spent a month setting everything up before I hired my first employee or took on my first client. I wrote job descriptions and manuals for all the employees I knew I would hire. I wrote step by step instructions for each job. I also wrote an operations manual with company policies. I know that can seem counter-intuitive in this industry of lone wolves but I knew I wanted to grow so I planned big from the start. I put systems into place so that when the workload increased and I added people the transition was smooth.
I like to work at full capacity, taking on as many clients as I can possibly manage then adding staff as I go. For me personally I know that the less I have to do in a day the more I will procrastinate, I need to have deadlines and clients nipping at my heels to perform my best. I need to have payday looming and people looking to me for money. So basically, get the adrenaline pumping, make it do or die and you will do

JMO