The misconception here is that Flight numbers are not treated as IDs. A unique key to any flight is the composite of number/origin/departure date.
And it's mostly a holdover from legacy systems airlines are entrenched in, so there isn't much else anyone can do here short of completely reinventing the mainframe reservation systems and heavily refactoring all the pieces that depend on it.
> isn't much else anyone can do here short of completely reinventing the mainframe reservation systems and heavily refactoring all the pieces that depend on it.
This is commonly called "software maintenance". I believe that most places have contracts to keep software up to date for changing specifications/operating systems.