As a former captain i understand the difficulties when trying to organise games. However, in your post you have answered your own question.
And your proposal would be to lock down the game nights? this would only make it harder to organise games and would likely in fact deter teams/players from signing up. For example, someone may have fixed late shifts on tuesday & thursday. if I was that person, knowing i could only play league games 1 night a week maximum, i wouldn't pay for a player license and contribute to the team license for 1 night a week of league games. (in fact i am nearly this person, i work 2 late shifts until 20 CET a week. i would not sign up to play and pay money for the privilege if locked game nights were a thing).
IMO it is fine as it is, its not ideal or a perfect method but i'm not sure it can be made any simpler. This is where it comes down to the captains of the teams to be considerate and negotiable when arranging fixtures.
the flexibility afforded in the lower leagues to move things around is crucial to the majority of those teams in my opinion and it should be kept as it is.