I have turned off all other labours, and he now just stands around with no job. I have tried changing bookkeeper to an unskilled peasant, same effect.
I strongly doubt that "precision" is based on actually adding individual items to the list. It's an abstract, based on significant figures. If it says "highest precision", you're seeing everything, even if a large caravan were to arrive and explode and dump 1000 new items onto the map, they'd all be immediately seen in z-stocks so long as you have "highest precision".
So trying to improve from "highest" just isn't going to work. (As stated above.) So give your bookkeeper something useful to do, and train someone else up at the task as they are needed.
The items listed inz-stocks are one of the few places where access and pathing are not a factor. Anyone who has ever seen the list include the bones or corpses of dead water creatures before they've found the UG river or pool can vouch for this. So if it's on the map, anywhere, it should be listed.
If precision is high enough to see individual items in the z-stocks (and yours is, certainly), it's easy to find items listed there. But it's harder to do the reverse- prove that an item on the map is listed.
The way to tell, is to see how much thread is listed - unforbid it all in z-stocks/thread. Then use <k> and go to your "piles of thread" and forbid them all, and count them as you do. Go back to the z-stocks, and see if that many have been forbidden. Continue until either you find some that isn't being reflected in the z-stocks, or you have forbidden all that you can see w/ <k>.
(Unforbidding will be fast in z-stocks).
Either you'll find that they are, in fact, all represented, or you'll have proven it's a bug, and have your answer either way.