First of all, let me re-iterate what thisismynamenow wrote in this his now deleted answer - if you are in a position to do so, re-consider whether this requirement is important enough that you are willing to go through administrative and managerial hassle for it. Like thisismynamenow, I think most schools just live with the fact that some classes in some years "lose" a session or two due to public holidays.
You should also note that one reason why students don't like this solution is that it essentially "punishes" them for having a public holiday - "hurray, Friday is off, so now we need to get the same classes done in 4 days". In a way your current planning removes the point of having a public holiday - you are just moving classes so that students don't need to sit in class on a public holiday without actually reducing the workload on students in this week. Essentially, if for example Friday is a "day off", the students now spend more time than regularly in class Monday to Thursday, and maybe then need to catch up on their homework and assignments on their "day off" because they did not get to it as much as regularly during the week.
If having a fixed number of classes per course is really important to you, you should at least communicate these changes to the schedule differently. Your current way to phrase this seems ungodly complicated to me:
tomorrow is a calendrical Wednesday, but an academic Monday.
Why not just announce (for each class that needs to be moved) that the class planned for week 3 has been moved to Monday (same time) due to the public holiday on Wednesday, rather than messing around with "renaming" days?
This of course does not change the fact that students are encumbered by your change of schedule, and I really don't think there is a good way to fix this (other than announcing all moved sessions as early as possible, i.e., at the beginning of the semester, which I expect you are already doing).
If these class changes happen frequently enough, it may make sense to discard the notion of a fixed weekly schedule entirely. In my alma mater, for smaller advanced classes, we basically had no fixed weekly meeting time. Instead, some weeks did not have sessions at all (replaced for instance with more time for projects, home work, or self study) while others had longer sessions (e.g., when we presented semester projects, classes would last at least a full afternoon). The weeks where we had regular sessions did not necessarily all happen at the same time and day, but were scheduled individually based on availability of rooms, course requirements, and, for small courses, taking individual student constraints into account.
¯\_(ツ)_/¯