I know a few Williams that go by William, Will, Bill, Billy, and Liam, sometimes more than one nn per person. It's a great name that comes with a lot of nns, so I'm sure people are just aware of all the nns and want to abide by your wishes. Just answer and say "We call him William."
But I have to ask, are you going to be annoyed if anyone gives him a nn at any point in his life? I totally understand personal preference, so call him William. But at some point, he's going to have his own preference and it might not be yours. What if he's 12 and his friends call him Billy and he LIKES it? Is it going to bother you then?