Mostly, I don't think we should be encouraging a ton of people to all show up at the same place at the same time. That's just asking for long lines and other issues.
I think it'd be much better to just drag voting out of the course of a month and actually encourage people to not show up on election day. Or to just vote by mail more, I haven't been a poll since I was a child (and back then we had levers!) but from what I hear now half the time you're just filling out a mail ballet in person now.
It's a country with 300 million people, there's plenty of people for anything. I'd wager that in percentual terms, the absolute majority would benefit from an election day holiday.
So, a national holiday really only makes sense for those presidential election years. Or, we could declare "first Tuesday after first Monday in Nov" as an annual holiday, and many states would likely line up their fall elections on that date. Primaries would still be a mess, but they always will, as they're not always open elections anyways (some states require party membership or declared party affiliation to vote in primaries).
Same process, just s/USPS/SMTP/. But if that's fine, why make the user jump through the email hoop? Hell, digital ballots would give you stronger guarantees for verifying your vote. Publish all the ballots publicly and base the final tally for digital votes on that public ledger. Every voter will have a code they can use to pull up their specific ballot and see that it's correct. And since the codes are public that's not actually enough to prove it was yours (yay non-repudiation).
No cryptography, no hashes, no zero trust proofs. The internet is only used to move a document from A->B and security model could be explained to the least technical person since it's a direct analogue of how you would do it IRL.
if you're worried about voting being a black box, it already kind of is. what proof did you get that your last vote was accounted for properly? who counted it?
if you're worried about "hacking" you're not paying quite enough attention. We have secure systems that exist. At least as secure as a fuckton of snail mail managed by tens of thousands of the worlds most insecure asset, people.
I like your system. Ping me if there's ever an open codebase and I'll contribute.