Well, let's see.
I, too, am a solo practitioner - strictly fee for service - and I bill AFTER the work has been done...not in advance...for my regular clients.
For new clients and those where it may be a one time job, I get a retainer agreement with a modest fee in advance.
Most of the clients come by referral and I can use the referral source to pry money out of late payers.
My experience has been the opposite of yours - clients pay promptly - most of the time - the exceptions are occasional, and, after hitting the wall a few times, I try to forget about them and go on with the good clients and the fun part of the job.
In your situation, it would appear as if those clients who balk at the full fee in advance are the troublesome ones.
You may have to decide if it is worth keeping them, at the reduced fee, or if you should start charging late fees for their work or if you should just resign, or raise the "advance retainer" for them.
By the way, in my practice, and mainly because I don't have the stomach for going to court, we have not filed small claims court suits against them. [My time and energy are too important - and I'm chicken!]
Other firms in this area (So. Cal.) do go to small claims court on a regular basis and collect. ... and sometimes keep the client.