Q1. The FSF/GNU has pretty clear guidelines on how to format copyright notices:
[…] add each year in which you have made nontrivial changes to the package. (Here we assume you’re using a publicly accessible revision control server, so that every revision installed is also immediately and automatically published.)
[…] You can use a range […] if and only if: 1) every year in the range, inclusive, really is a “copyrightable” year that would be listed individually; and 2) you make an explicit statement in a README file about this usage.
However, the FSF guidelines are probably more detail-oriented than necessary. E.g. I have seen no software that actually implements the third condition and explains the notation in the README.
The other parts are very good and very important: don't use a range unless there were copyright-relevant changes in all of the years.
If in doubt, just add another Copyright notice line. In any case, only the most recent year is really relevant. However, do not delete or falsify old notice lines.
Should the years indicate changes or publication? A tricky question which I'm not qualified to properly answer, but I think using the years of changes is the more relevant approach. The GNU manual quoted above hints towards publication being relevant, but this might be outdated advice.
Q2. Yes, adding separate lines for separate contributors is a common practice and is a good idea. However, it is not necessary that the copyright notice accurately reflects the exact copyright holders. Contributors have copyright regardless of whether they added a notice. I discuss some background in this answer.
But you seem to have contributions from before 1989, which, if made in the US, might not be covered by copyright at all.
My preferred solution would be to add a legally meaningless but more accurate notice like “Copyright 2021 the FooSoftware contributors”, and to credit contributors in a separate file like AUTHORS. I would feel uncomfortable retroactively adding copyright notices for long-ago contributions since this is (a) not necessary, and (b) runs into the risk of creating an invalid or misleading notice.
However, it seems that you're in contact with all copyright holders, and are thus able to create accurate and detailed notices. I assume you're in contact with all of them since only the copyright holders can issue a license such as the GPL. You need all of the copyright holder's consent, or have to remove the contributions of contributors who don't consent. (There are legal theories that you don't need everyone's consent, but it's a bad idea to test such theories.) In some cases the individuals who contributed might not be the copyright holders who can grant a license, in particular if their contributions were made in the course of their employment.