You are not alone, and there is not any help from Upwork to protect clients when this occurs.
What we did to try and mitigate these situations is create a freelancer contract where work cannot be submitted after a deadline has passed, and freelancer must reach out before continuing to log hours worked. Also, definitely turn on the feature to disable manual hours logged. Definitely will save you money and frustration.
From a freelancer perspective, I want to suggest that it's very important that clients actually discuss deadlines rather than rely on the milestone deadline. In addition to the fact that those deadlines have no actual effect in the Upwork account, many clients don't use them, choose random dates, or end up with some sort of default date they weren't even aware of.
I've had many clients accidentally create a deadline that's the same date as the offer date, though we've agreed that I won't even be starting for a few days. I've had clients post a deadline a week out, but then come looking for the work in a day or two and say something like, "Oh, that was just a placeholder. I actually need it today."
I'm sure my experience in this isn't unique, and that many freelancers rely of necessity on discussed timelines versus Upwork milestone deadlines.