Are there canonical implementations of the Scheme reader algorithm for
some of the reports (R5RS, R6RS, R7RS)?
Not that I'm aware of, although Chibi and others are R7RS-small compliant.
I don't know what to post as the reference implementation of underscores
in the SRFI.
One good thing to include would be BNF compatible with the BNF in the R7RS-small report.
The code below would constitute the core of it -- a procedure to read a
group of digits, possibly with underscores in between. This kind of
subroutine would be called by the main number reader whenever it comes
across a "one or more digits" part of the number.
Perhaps you could test hooking it into one of the R7RS implementations just to show that it works in context.