Is your desire faster JSON parsing (do you find Go's too slow?), or is it more wanting parse callbacks instead of Decode/Unmarshal.
Go's json package internally could do something like this,
... but it's not exported, probably because it doesn't seem that useful.
The beauty of writing in Go, imo, is you don't have to deal with event-based programming anymore. Want to parse JSON from a slow network client? Just do it-- the goroutine is cheap. Do a blocking read from the network right into the json parser.
Or are you just interested in the details of how to wrap a library with callbacks for technical curiosity?