I see the problem as you are letting your customers control your schedule.
Problem is not contracts.
You need to tell your on call customers that you only do on call on Mondays. They have to call by the previous Thursday and they must have the check post marked by the previous Friday of the service.
EOW's are done on Tuesdays. Half one week, the other half the next week.
Now you are controlling your schedule and you have made payment management easier.