GF are designed by nature to be constantly on the lookout for food because in the wild they don't have helpful humans delivering it twice a day! They have to hunt and pick all day to get enough to eat. Therefore domestic goldfish will keep begging and searching for food even when they don't need it and aren't very hungry. They also quickly learn to associate food arriving with their owner so most fish crowd anxiously at the surface when you approach the tank just in case this is the magical moment!
There isn't much you can do to stop this behaviour because it's instinctive, but it helps if you only feed them at set times of the day - say only at 8.00 a.m. and 6.00 p.m. - so they learn when they can actually expect food and when it's unlikely to appear. They'll still come and hover hopefully when you approach the tank outside of these times but not for very long because they don't really expect food to arrive.
It's also helpful to vary the areas of the tank where you drop food in so they don't learn to associate just one place with food and constantly stay there waiting for it.
Hope this helps.