Why do so many forms of this name exist?
While modern usage prefers to translate names to an original or etymological form, it was once a more common practice to Latinize names with little change other than moving it into a declension. Thus, many forms of the name exist because the name is found in many forms across the languages of Europe. (This in turn is likely because of the name's unusual sounds/spellings like w and h. Compare something more straightforward like 'Bern[h]ardus'.)
Those following the simple Latinization rule would make an Italian Guglielmo into Guglielmus, a German Wilhelm Wilhelmus, a Spanish Guillermo Guillermus, etc.; with dialect variations and non-standardized spelling, the number of forms thus produced might become arbitrarily high.
Those not following that rule would presumably fall back on whatever form they were familiar with or believed was correct.
Are all the spellings equivalent, or should they be considered different names?
This question is a bit complicated, as the concept of considering related names 'equivalent' is very much dependent on the culture doing the deciding. For example, it used to be more common that a person's name would be translated depending on whatever language they were being talked about in; someone who was Guillermo in Spanish might be called Wilhelm in German—those names might be considered equivalent in a way they wouldn't be today. (Nowadays we only expect this practice for nobility: Pope Francis is François in French, Francesco in Italian, etc.)
In general, you'll want to apply Postel's law: be conservative in what you do, be liberal in what you accept from others. You should be prepared for authors to be inconsistent on what form is used; you should be prepared for authors to prefer a particular spelling for all names related to William; you should be prepared for authors to [try and] respect whatever spelling was normally used by or for any given historical person—but in producing your own Latin it's probably better to treat them all as different names.
Are they all considered "correct" spellings for the modern period?
Probably not. Some forms are markedly unusual — Vicipaedia lists people called Golielmus, Vilelmus, and Willielmus; while they may be acceptable when referring to the historical persons to whom they were applied, these forms should probably not be considered correct when applied to modern persons who did not choose them.
The "correct" spelling(s) to use when translating the name of a modern person are going to depend on your editor or community. Vicipaedia likes Gulielmus; Carolus Egger's book apparently gives Villelmus as its chief equivalent with nods to Gulielmus and Guillelmus; the etymology might even support Wilhelmus, if you're not afraid of using a W in Latin.