Considérant en fait et en droit :
1.
Le 28 août 2019, la Juge de paix du district de La Riviera-Pays d'Enhaut a relevé Me D._ de sa mission et désigné, en remplacement, Me C._ comme avocate d'office de A._ dans le cadre de la procédure de mainlevée d'opposition qui oppose ce dernier à B._.
Par arrêt du 1er novembre 2019, la Cour des poursuites et faillites du Tribunal cantonal vaudois a déclaré irrecevable le recours formé par la partie assistée contre cette décision.
2.
Par écriture expédiée le 19 décembre 2019, A._ exerce un " recours (art. 382; 396 CPP) " au Tribunal fédéral contre l'arrêt de la cour cantonale; il sollicite le bénéfice de l'assistance judiciaire totale et formule diverses réquisitions de procédure.
Des observations n'ont pas été requises.
3.
L'écriture du recourant doit être traitée en tant que recours en matière civile au sens de l'art. 72 al. 2 let. a LTF. Il n'y a pas lieu de vérifier les autres conditions de recevabilité - en particulier le caractère final ou incident de la décision entreprise (ATF 139 V 604 consid. 2.1, avec les citations) -, le procédé étant voué à l'échec.
4.
4.1. En l'espèce, l'autorité cantonale a constaté que le recourant avait recouru à l'encontre du prononcé du premier juge par un acte " daté du 9 septembre 2019 et posté le 11 septembre 2019". Il ressort d'un extrait du suivi des envois postaux figurant au dossier que le pli contenant la décision attaquée lui a été notifié le 29 août 2019, de sorte que le délai de recours de dix jours est venu à échéance le dimanche 8 septembre 2019 et a été reporté au lundi 9 septembre 2019(art. 142 al. 3 CPC); mis à la poste le 11 septembre 2019, le recours s'avère dès lors tardif, partant irrecevable. Il n'est pas nécessaire d'interpeller le recourant à ce propos, dès lors que la tardiveté du recours apparaît manifeste au regard des pièces du dossier.
4.2. Le recours est d'emblée irrecevable en tant qu'il s'écarte de l'objet du litige, tel qu'il est déterminé par la décision attaquée (ATF 142 I 155 consid. 4.4.2, avec les arrêts cités). Sont, en particulier, dépourvus de pertinence les arguments relatifs à la résiliation du contrat de prêt ou à l'existence de la créance déduite en poursuite par la banque.
4.3. Le recourant soutient que le jugement de première instance a été notifié à " l'avocat [e] désigné [e]" ( i.e. Me C._), et " non à [lui] personnellement "; il invoque en outre une " jurisprudence constante " en vertu de laquelle la cour cantonale devait lui fixer un " court délai d'au moins cinq jours pour s'exécuter et désigner un avocat ". Il ne contredit toutefois pas valablement la constatation selon laquelle la décision entreprise a été notifiée à " A._ le [...] 29 août 2019", les " pièces figurant au dossier ne laissant aucun doute à cet égard " ( cf. sur cette forme d'arbitraire: ATF 140 III 264 consid. 2.3). Il ne critique pas davantage le refus de la juridiction précédente de l'interpeller au sujet de la tardiveté du recours cantonal (art. 42 al. 2 LTF; ATF 140 III 86 consid. 2). Dans cette mesure, le recours doit être aussi écarté d'emblée (art. 42 al. 2 et 106 al. 2 LTF; ATF 142 III 364 consid. 2.4).
5.
Vu ce qui précède, le présent recours doit être déclaré irrecevable par voie de procédure simplifiée (art. 108 al. 1 let. aet b LTF). Comme les conclusions du recourant étaient vouées à l'échec, il y a lieu de rejeter sa requête d'assistance judiciaire et de mettre à sa charge les frais de la procédure fédérale (art. 64 al. 1 et 66 al. 1 LTF).
Le présent arrêt rend sans objet les requêtes d'effet suspensif et de suspension de la procédure formées par le recourant.
Par ces motifs, le Président prononce :
1.
Le recours est irrecevable.
2.
La requête d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 750 fr., sont mis à la charge du recourant.
4.
Le présent arrêt est communiqué au recourant, à B._, à Me C._ et à la Cour des poursuites et faillites du Tribunal cantonal vaudois.
Lausanne, le 13 janvier 2020
Au nom de la IIe Cour de droit civil
du Tribunal fédéral suisse
Le Président : Herrmann
Le Greffier : Braconi