The only way to deal with this is to set your own standards and then stick by them. It is essential that you communicate your terms before commencing the job or the case is lost already.
My terms are usually 50% prior to commencement of the job, then 50% at the time of delivery of High-res files. In specific cases, I sometimes negotiate away the 50% up front and instead take 100% against High-res delivery.
I only give payment terms to clients who are giving me regular work of high value, and in these cases, never more than 30 days. I do not negotiate my dayrate, ever. You are either worth what you say or you are not and the only person who can decide this is your client.
My terms also spell out that late payments will be charged interest at an annualised rate of 18%, calculated and compounded on daily balances. This is to make sure that the payments clerk understands that if he delays payment, he will have to explain to his boss why the cost goes up. There must be clear consequences for non-complience with agreed terms. The consequences must also be significant enough to be taken seriously.
One of the major reasons why I decline to work for ad agencies (after 20+ years in the ad game) is that the agencies have gone from 30 days as "normal" to 60-90 days terms. As I am the one giving credit to the client, I set the terms. Those who balk get politely told that if they can't afford me, that's ok, we just won't be working together. Some rise to the implied insult and mostly become loyal customers who understand that I mean what I say. There is respect in that relationship. The most common excuse I used to hear (before I hardened up) was "the client hasn't paid us yet". Sorry, but if you can't manage your cashflow, that's your problem, don't make it mine. You should not accept the insulting implication that a client is doing you a favour by giving you work. It's a business relationship, not a romance. If you agree terms, you honour them, both of you. The time and aggravation spent chasing payments is better spent finding new clients who pay on time.
This sounds pretty negative on the surface of it, but since I took a stand (I am in a market where 120+ days is common), I have built a client base who love what I do for them, respect me as a business person and most importantly, pay their bills on time. This has meant I am less stressed and therefore doing better work, which in turn has seen my turnover treble since I took a hard line 3 years ago.
If you have agreed a late fee, you must charge it.