Faits :
A.
Le 3 janvier 2017, le Ministère public de l'Etat de Fribourg est entré en matière sur une demande d'entraide judiciaire présentée par les autorités roumaines (Parquet près la Haute Cour de Cassation et justice à Bucarest) dans le cadre d'une enquête dirigée notamment contre B._, A._ et C._, pour évasion fiscale et blanchiment d'argent. Le Ministère public a par la suite rendu plusieurs décisions de clôture, les 14 février 2017, 30 janvier 2018, 1er septembre 2020 et 31 mars 2021, qui ont toutes été soit rapportées, soit annulées. Le 26 juillet 2021, il a rendu une nouvelle décision de clôture par laquelle il a ordonné la transmission des documents relatifs aux comptes détenus par C._, d'un procès-verbal d'audition et de la documentation relative à un compte détenu par A._, pour la période du 5 mai 2011 au 4 janvier 2017.
B.
Par arrêt du 14 décembre 2021, la Cour des plaintes du Tribunal pénal fédéral a rejeté le recours formé par A._. L'ordonnance de clôture était suffisamment motivée et répondait aux objections du recourant. Ce dernier se plaignait de n'avoir pas eu accès aux compléments de la demande d'entraide, ainsi qu'à la correspondance échangée avec l'avocat de C._, lequel invoquait l'art. 2 EIMP en soutenant que les services de renseignement roumains auraient mis à disposition du parquet, en vertu d'un accord secret, les résultats de surveillances illégales; s'en était suivi un échange entre le Ministère public, l'Office fédéral de la justice (OFJ) et l'autorité requérante. Selon la Cour des plaintes, le recourant connaissait ces échanges dès le 30 janvier 2018 - date d'une décision de clôture antérieure - et n'avait demandé l'accès à ces pièces que le 30 octobre 2020; malgré l'absence de réponse du Ministère public, il ne s'était pas manifesté. Il n'avait pas non plus demandé la consultation du dossier à la Cour des plaintes, ni soulevé de grief spécifique à ce sujet. Pour le surplus, la Cour des plaintes a considéré que l'exigence de la double incrimination était satisfaite et que les principes de la proportionnalité et de la spécialité étaient respectés.
C.
Agissant par la voie du recours en matière de droit public, A._ demande au Tribunal fédéral d'annuler l'arrêt de la Cour des plaintes, de déclarer la demande d'entraide irrecevable, de refuser l'entraide judiciaire et d'inviter l'autorité d'exécution à prendre les mesures nécessaires en conséquence, subsidiairement de renvoyer la cause à l'instance précédente pour nouvelle décision dans les sens des considérants. Il demande préalablement l'effet suspensif (accordé ex lege selon l'art. 103 al. 2 let. c LTF), ainsi que l'accès à l'intégralité des pièces le concernant. Il requiert enfin la possibilité de compléter son recours en application de l'art. 43 LTF au cas où le Tribunal fédéral examinerait sur le fond le grief tiré de l'art. 2 EIMP.
La Cour des plaintes a été invitée à produire le dossier. Elle a ensuite renoncé, tout comme le Ministère public, à présenter des observations. L'OFJ conclut à l'irrecevabilité du recours, subsidiairement à son rejet. Il relève qu'après délégation à l'autorité cantonale, il n'est pas en charge de l'exécution de la demande d'entraide. Il considère que chaque personne concernée par une mesure d'entraide fait l'objet d'une procédure séparée, et doit invoquer ses propres objections sur la base des éléments de son dossier.
Considérant en droit :
1.
Selon l'art. 84 LTF, le recours en matière de droit public est recevable à l'encontre d'un arrêt du Tribunal pénal fédéral en matière d'entraide judiciaire internationale si celui-ci a pour objet notamment la transmission de renseignements concernant le domaine secret et s'il concerne un cas particulièrement important (al. 1). Un cas est particulièrement important notamment lorsqu'il y a des raisons de supposer que la procédure à l'étranger viole des principes fondamentaux ou comporte d'autres vices graves (al. 2). Ces motifs d'entrée en matière ne sont toutefois pas exhaustifs et le Tribunal fédéral peut être appelé à intervenir lorsqu'il s'agit de trancher une question juridique de principe ou lorsque l'instance précédente s'est écartée de la jurisprudence suivie jusque-là (ATF 142 IV 250 consid. 1.3). Une violation du droit d'être entendu dans la procédure d'entraide peut également fonder un cas particulièrement important, pour autant que la violation alléguée soit suffisamment vraisemblable et l'irrégularité d'une certaine gravité (ATF 145 IV 99 consid. 1.5).
En vertu de l'art. 42 al. 2 LTF, il incombe à la partie recourante de démontrer que les conditions d'entrée en matière posées à l'art. 84 LTF sont réunies (ATF 139 IV 294 consid. 1.1). En particulier, il ne suffit pas d'invoquer des violations des droits fondamentaux de procédure pour justifier l'entrée en matière; seule une violation importante, suffisamment détaillée et crédible peut conduire, le cas échéant, à considérer que la condition de recevabilité posée à l'art. 84 al. 2 LTF est réalisée (ATF 145 IV 99 consid. 1.5).
1.1. L'arrêt attaqué se rapporte à un recours dirigé contre une ordonnance de clôture prévoyant la transmission de documents relatifs à un compte bancaire détenu par le recourant. La première condition posée à l'art. 84 al. 1 LTF est ainsi réalisée.
1.2. S'agissant de la deuxième condition, le recourant se plaint d'une constatation arbitraire des faits, d'une violation de son droit d'être entendu et d'une violation, sur le fond, de l'art. 2 EIMP. Il estime que la décision de clôture reposerait sur des pièces dont il n'avait (et n'a toujours) aucune connaissance, soit la correspondance relative à la collaboration entre les autorités de poursuites roumaines et les services de renseignement. En reprochant au recourant de ne pas avoir relancé le Ministère public fribourgeois à propos de sa demande de consultation, la Cour des plaintes poserait une condition supplémentaire au respect du droit d'être entendu. Le recourant estime que l'ensemble du dossier d'entraide aurait dû lui être spontanément communiqué afin de faire valoir le moyen tiré de l'art. 2 EIMP, moyen qu'il avait, en tant que personne résidant en Roumanie, qualité pour soulever. Ce grief d'ordre formel justifie, comme on le verra, une entrée en matière.
2.
Selon l'art. 80b al. 1 EIMP (qui concrétise en matière d'entraide judiciaire les prérogatives découlant de l'art. 29 al. 2 Cst.), les ayants droit peuvent notamment consulter le dossier si la sauvegarde de leurs intérêts l'exige. Ce droit s'étend à la demande d'entraide judiciaire et ses annexes, aux compléments éventuellement présentés par l'autorité requérante, aux pièces d'exécution ainsi qu'à tout élément du dossier permettant de se prononcer sur l'admissibilité et l'étendue de l'entraide (arrêt 1A.257/2005 du 24 janvier 2006 consid. 2.3).
2.1. En l'occurrence, les pièces auxquelles le recourant réclame l'accès ont trait à la même demande d'entraide judiciaire, et ont été produites dans une procédure d'exécution distincte mais connexe, concernant C._ et faisant suite aux griefs soulevés par ce dernier. On peut dès lors se demander si ces pièces, relatives à la recevabilité de la demande d'entraide judiciaire, ne devaient pas, au même titre que les demandes et les documents d'exécution, être communiquées d'office au recourant puisqu'ils paraissent utile à la défense de ses intérêts dans la procédure d'entraide. Quoi qu'il en soit, le 30 octobre 2020 - après réception d'une précédente ordonnance de clôture qui en faisait état -, le recourant a expressément demandé l'accès à ces pièces en relevant notamment que contrairement à C._, il avait qualité pour soulever le grief d'une violation de l'art. 2 EIMP. Comme cela ressort de l'arrêt attaqué, le Ministère public n'a apparemment jamais répondu à cette demande. Le recourant n'a certes pas relancé le Ministère public dans le cours ultérieur de la procédure, mais il s'est en revanche clairement plaint, dans son dernier recours à la Cour des plaintes, d'avoir été oublié par le Ministère public.
Force est d'admettre le bien-fondé de cette allégation: le recourant n'a en effet reçu aucune décision au sujet de sa demande de consultation du dossier. La Cour des plaintes lui reproche ne pas avoir relancé le Ministère public. Une telle obligation peut certes être imposée à celui qui se plaint d'un retard à statuer (ATF 126 V 244 consid. 2d), mais non à la partie qui requiert expressément l'accès au dossier et ne reçoit aucune réponse à ce sujet. Le recourant n'a certes pas non plus demandé la consultation du dossier durant la procédure de recours, mais cela n'empêchait pas la Cour des plaintes de constater à tout le moins l'absence de toute décision du Ministère public sur la question de l'accès au dossier.
3.
Le recours doit par conséquent être admis, pour le motif formel qui précède, ce qui dispense d'un examen du fond. L'arrêt attaqué est annulé et la cause est renvoyée à la Cour des plaintes pour nouvelle décision au sujet du droit d'accès au dossier. Pour autant qu'aucun intérêt ne s'y oppose (art. 80b al. 2 EIMP), celle-ci pourra communiquer elle-même les pièces requises, ou renvoyer la cause au Ministère public fribourgeois. Conformément à l'art. 66 al. 4 LTF, il n'est pas perçu de frais judiciaires. Le recourant, qui obtient gain de cause avec un avocat, a droit à des dépens (art. 68 al. 2 LTF), à la charge de la Confédération (Office fédéral de la justice). Le présent arrêt est rendu dans une composition à trois juges (art. 109 al. 2 LTF).
Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est admis. L'arrêt attaqué est annulé et la cause est renvoyée à la Cour des plaintes pour nouvelle décision au sens des considérants.
2.
Une indemnité de dépens de 2'000 fr. est allouée au recourant, à la charge de la Confédération (Office fédéral de la justice).
3.
Il n'est pas perçu de frais judiciaires.
4.
Le présent arrêt est communiqué au mandataire du recourant, au Ministère public de l'Etat de Fribourg, au Tribunal pénal fédéral, Cour des plaintes, et à l'Office fédéral de la justice, Unité Entraide judiciaire.
Lausanne, le 25 janvier 2022
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président : Kneubühler
Le Greffier : Kurz