I'd love to hear people's response to this question as well. I've owned various businesses for close to 20 years now and I've found it very difficult to work with people online. I don't design websites for a living but I'm in a similar space as I do photo editing and I can relate to clients abusing your time.
I'll try an offer what little advice I can to the OP. I have a terms and conditions form on my website that clients have to agree to (via checking a box on my order form) so I can at least point them back to something if things start going sideways. I also try and gauge the buyers during the sales process and I either charge more upfront if I feel they are going to be a needy client or I spell out that they get x amount of revisions and if they need more than that it'll be a certain price per revision. Sometimes these things work, sometimes they don't.