I wonder if it would be acceptable to create new info flag for RM_SEQ_ID that would behave just like XLOG_SEQ_LOG but would be used only for the nontransactional updates (nextval) so that decoding could easily differentiate between transactional and non-transactional update of sequence and then just either call the callback immediately or add the change to reorder buffer based on that. The redo code could just have simple OR expression to behave same with both of the info flags.
That's much cleaner than trying to keep track of sequence creations and really pretty harmless. I'll give that a go and see how it looks.
Seems like simpler solution than building all the tracking code on the decoding side to me.