Bom, dando o meu pitaco na estória, acho que de cara dá pra eliminar a família 18F pela quantidade de memória. A menos que você tenha muito programa e pouco processamento, o que geralmente não acontece (o seu pode ser um caso específico, não sei) fica um pouco inviável montar um programa muito grande num processador 18F.
Na época que era difícil achar no brasil outros processadores além dos pics (2004) , fiz um programa em lógica fuzzy dentro de um 18F452 e foi sofrido.. mas a quantidade de cálculos é que matava.
Outro ponto ruim para o seu caso é que não tem nenhum com ADC 12 bits e USB... já busquei no seletor e não tem em nenhuma das famílias...

Talvez seja o caso de pensar em usar um ADC externo de 12 Bits e dai pegar um PIC com USB interno, mas para essa quantidade de memória já pensaria num PIC32.
E embora não saiba sua aplicação, mas fiz no ano passado um projetinho para um amostrador com 10 entradas analógicas, conexão USB CDC, usando um 18F2550. Funcionou redondinho.
Abraço a todos.
Leo
Em todo