In my opinion, generally, you won't be able to recover any funds. Especially, if the client didn't get any gain out of this relationship. That's your cost of doing business unfortunately.
In order be less vulnerable, I believe you have to adjust your business model and expectations a little bit.
As a service provider, I believe you should be prepared to make certain efforts towards customer's satisfaction without expecting a payment. Doing so you will be able to attract more clients and eventually make more money.
At a certain point you have to start charging your client for your services. I believe it should be at the point when the client is already hooked either by your technology (if you have any) or simply by the amount of time he invested in communication with you.
You still have to expect that you might not get paid for your services. Thus you have to make sure the client doesn't get much from your efforts until he pays. If you're a designer, don't send quality images or vector graphics until paid or unless you have long history with the client. If you're developer, don't upload/checkin the final solution before the money. This would be a motivation for the client to pay.
The section below is best understood when you look at it from the client's standpoint.
You also have to be prepared that the client walks away. At that point he doesn't need your services anymore. If you've ensured what I mentioned in the previous paragraph, then this means he's walking away with nothing. It probably means that he didn't like your service. That's what you would do when let's say you're given a bill that's twice higher than a sales guy promised. Or when you realize that you're just wasting your time with someone.
The most practical step at this point would be to think how to improve your service. Problems may reside in its quality, pricing model, communication, delivery time, etc.
I hope it was somewhat helpful and not too offensive.