I can see couple of tools that I had used in the past in the above list, which I don't want to mention because my experience with them was disastrous.
I had been invoicing manually for the past 18 or 20 months, as the tools that we used did not go well. Being a small business, we do not take risk purchasing a software without using it, which had been working very well for us. All we had invested is on good tools, especially for our kind of business. I had even used CMS based extensions for billing and invoicing.
Luckily, one of my client referred Zylot - http://www.zylot.com
which I had been using for the past couple of weeks and we are in the process of purchasing this software for our in-house usage.