I deal with this with my clients and I am this type of client sometimes to others. (Sorry, did they say how sorry they were?...)
First - as the contractor when I propose work I always include something along the lines of: The terms and conditions of the proposal are effective through _. Acceptance after that date may necessitate increased fees or altered conditions.
Never-mind no one seems to actually read the proposal, this still covers you if they come back months later.
I have not done this but I have ready others say they get fast invoice payment by offering a discount if they pay within a certain amount of time. That might work in a proposal too - 3% discount if you sign and send a deposit by ____ date...
And then some people charge a premium for rush jobs. So if they ignore you then respond months later and suddenly need it now but you're busy with a different client, you can say "We can do that under our premium price if you need it now..."
As to why they do this from the other side of the fence. Some people really ARE busy. Some are just disorganized. Regardless, what is one big project that you're hoping to land from your perspective may be one of 20 projects this person is trying to coordinate/manage and it's not their sole focus the way it may be yours.
It doesn't hurt to politely remind them you exist. They may be putting out the closest fires and you can become that next fire.
I have noticed in my line of work that most of my clients are like this so I expect it and accept it and just try not to let their demands become my emergency. Multiple times I have literally worked all night for last minute requests someone HAD to have right away only to discover later that it sat in their in box for days before they dealt with it. It's hard but now I try to stay calm and give realistic time frames and not spoil my clients by indulging their last minute emergency mindsets.
Good luck and I am curious to hear what you do if you get good results.