When I was freelance I was lucky enough to get paid on time. Every time. I attribute it to the communication I had with the client. I would speak or email the client everyday I was working on their project. When it came time to invoice them I would simply send out an email.
Communicate often. It helps.