I've just been checking out 'Hamilton Island, Queensland' https://www.openstreetmap.org/node/313418906

Currently the islands have their coastline marked as natural=coastline, and a point somewhere in the island marked place=island,name=Hamilton Island.

The wiki says the name and place=island should probably be on the coastline. I note that if you do a search for it on the website it simply highlights the point and not the whole island which isn't ideal.

I thought it would be best to double check before tweaking it, what is the correct way of handling the island?

The answer to that depends, to some extent, on who you ask and on some other poorly-defined criteria. A node and place=island does the job but cannot meaningfully illustrate the size of the island, as you've pointed out. But if the island is quite large, assembling all the snippets of coastline as members of a relation can be burdensome for the OSM servers in both storing and assembling the various members during the rendering process.

In this case, Hamilton Island is so small it can simply be defined by the coastline as it was drawn and the node removed. Simply copy the node tags to the coastline, and delete the node. That's what I would do. But however you decide to do it, it's more or less your choice. There was a long discussion about a similar topic, that of creating a relation to define water features like bays and straits. Check it out if you want to understand more about the the pros and cons of using relations this way: