I’ve implemented something similar once, a manually stepped Arpeggiator.
It can be adjusted to trigger on any other message than a Note On (though I would suggest to stick to Note On, unless your CCs are ‘one off’ and won’t be producing lots of values)
So the Arp pipe can be used to hold the currently held down notes, and another message can be used to trigger the next note of the Arp sequence (or the entire chord at once, if its mode is set appropriately)