そもそもデフォルトのAnalogReadじゃ20kspsとれないし質問者もレジスタ直接叩けるでしょ
つまりArduinoの関数でやる必要はない
それに328PのADCって10bit精度なの15kspsまでだし高速化してるなら1byteでいいっしょ
そしたら160kbps以上あれば間に合うぜ
UARTでも何とか送れるんじゃないか