Call a head hunter and give his name and coordinates.
Or tell him he has to start coming in at 9:00 AM like everyone else.
That'll only frustrate 'im, and he probably won't come in at 9 anyway.
How about - Make him dispensable? Otherwise grin and bear it.
See also: GuruWritesAutomatedTest, GetRidOfIndispensableProgrammerAsQuicklyAsPossible