Sure we've seen it happen this season but this season is also unlike any other with teams having to try to find an opponent with only a few days' notice on quite a few occasions. And this would be far more difficult when fans are able to attend because they need to make travel plans and arrangements, and games scheduled on short notice would undoubtedly hurt attendance. It's far easier to schedule on the fly or move games around when AD's don't have to worry about selling tickets.
I get the frustration seeing games scheduled 10+ years in advance but the reason that happens is because some teams' schedules are already full for the next 5-10 years.
The schedules are full that far out because that is how it is has always been done, not for any other reason.