Is it possible to treat typed numbers similar to universal argument
C-u 10 C-n, but make it so that there is no need to type
C-u in a minor mode? So only
10 C-n would be needed to move 10 lines down and
C-n to move 1 line down.
Of course. The canonical way to do that is to use
suppress-keymap on your mode's keymap. E.g.
(defvar my-mode-map (let ((map (make-keymap))) (suppress-keymap map) ... map))
In the unlikely case that you want to keep the self-inserting behavior of non-digits, then you should instead manually bind each digit to
digit-argument as you apparently discovered in the mean time.