Due to the number of no-shows, I have an idea for the tournaments (and maybe even the weekly league matches)...
Mandatory check-in toward the end of the previous week (up until the end of the weekend), before brackets/groups are created on Mondays, to make sure they’re still playing. It sounds like a hassle, but maybe there’s some kind of site you can use to track it, and people can check in themselves. Like maybe even a Google poll each week, where players can either select their own name from a list, or just allow a fill-in. Then all the results would be sent right to you for easier tracking.
I think there are some people who may just plain stop showing up (move to other games, have life stuff happening, etc), and not think to announce their departure. So something like this may be helpful and eliminate the frustration of people who don’t get responses from their schedules opponents.