Faits:
A. Le 20 février 2006, le Juge d'instruction du canton de Fribourg Olivier Thormann s'est adressé au Bureau du Conseil Général de la ville de Fribourg. Il exposait avoir pris connaissance du rapport de la commission chargée d'enquêter sur l'établissement des responsabilités de l'état financier de la caisse de prévoyance du personnel de la ville de Fribourg (ci-après, la commission d'enquête), ce qui avait conduit à l'ouverture d'une instruction pénale pour faux dans les titres. Il demandait la production de l'intégralité des procès-verbaux d'auditions, des bilans de la caisse de pension et de la ville de Fribourg.
Entre le 27 novembre 2006 et le 1er février 2007, le Juge d'instruction a entendu plusieurs personnes à titre de renseignements, parmi lesquelles le Syndic de la ville de Fribourg et C._.
Par lettre du 23 juillet 2007, le Juge d'instruction fit savoir notamment à C._ qu'après l'avoir entendu et étudié le dossier, il avait décidé de le mettre en prévention de faux dans les titres: il lui était reproché d'être coresponsable de l'inscription insuffisante, au pied du bilan, de la garantie accordée par la ville à la caisse de pension, de 2000 à 2003. La gravité des faits ne justifiait pas un renvoi devant un tribunal, de sorte que l'affaire pouvait être close par une ordonnance de condamnation, à laquelle le Ministère public avait en principe déjà consenti. Une nouvelle audition n'était pas nécessaire. Un délai était imparti au prévenu pour requérir une audition, présenter ses observations ou demander d'éventuels compléments de preuve. Le dossier pouvait être consulté. C._ a demandé une nouvelle audition le 31 août 2007.
B. Le 23 août 2007, le Juge d'instruction informa les prévenus qu'il s'apprêtait à diffuser le communiqué suivant à la presse:
"Dans l'affaire de la caisse de pension de la ville de Fribourg, quatre personnes ont été mises en prévention pour faux dans les titres.
En octobre 2006, le juge d'instruction Olivier Thormann avait ouvert une procédure pénale pour faux dans les titres dans l'affaire de la caisse de pension de la ville de Fribourg. Ayant terminé ses auditions, répertorié les pièces utiles et informé les personnes concernées, le juge est aujourd'hui en mesure de rendre publiques ses premières décisions.
Quatre personnes, trois employés communaux et Monsieur A._, ancien directeur des finances de la ville de Fribourg, sont prévenues de faux dans les titres, pour avoir, entre 2000 et 2003, minimisé l'engagement conditionnel que la ville avait pris en faveur de sa caisse de pension. La situation économique a ainsi été dépeinte de façon trop positive par rapport à la réalité.
En revanche, le juge d'instruction n'a pas prononcé de mise en prévention liée à la non inscription, au pied du bilan des comptes de la ville 1995-1999, de la garantie accordée à la caisse de pension, faute qui relève de la négligence, raison pour laquelle toute action pénale serait prescrite.
Si, au terme de la procédure, les quatre personnes devaient être condamnées, cela pourrait, en vue de l'importance des reproches, se faire par simple ordonnance pénale.
Par ailleurs, aucune instruction pénale n'a été ouverte à l'encontre de Monsieur Dominique de Buman.
Par lettre du 24 août 2007, l'avocat de l'un des prévenus a estimé que le communiqué ne répondait à aucune nécessité, qu'il était prématuré et violait la présomption d'innocence. Le communiqué a néanmoins été diffusé tel quel le 27 août 2007. Le Juge d'instruction a par la suite fait des déclarations complémentaires à la presse.
C. Le 11 septembre 2007, C._ a demandé la récusation du Juge d'instruction. Le communiqué de presse était intervenu à un moment inopportun, puisque les prévenus ne s'étaient pas encore déterminés; il n'était pas nécessaire de dévoiler leur identité. Le Juge d'instruction avait par ailleurs clairement manifesté son intention de rendre une ordonnance de condamnation, indépendamment d'une nouvelle audition des prévenus. Son impartialité n'était plus garantie. C._ lui reprochait encore de l'avoir d'abord entendu à titre de renseignements, ce qui l'avait privé de l'accès au dossier et d'une instruction contradictoire.
D. Par décision du 30 novembre 2007, le Président de l'Office des Juges d'instruction du canton de Fribourg a rejeté la demande de récusation. Le Juge pouvait d'abord entendre les intéressés à titre de renseignements, afin de déterminer qui devait par la suite être mis en prévention. Cette procédure en deux temps respectait les droits des prévenus, notamment la présomption d'innocence. Même si le magistrat avait manifesté son intention de clore la procédure en rendant une ordonnance pénale, les prévenus pouvaient faire valoir leur droit d'être entendus et de requérir des compléments d'instruction. Selon la loi et la jurisprudence, un juge d'instruction était d'ailleurs considéré comme suffisamment impartial pour ouvrir ou compléter une instruction, même après avoir rendu une ordonnance pénale. Le communiqué de presse écrit était conforme à l'art. 72 al. 2 CPP/FR, le Juge d'instruction ayant à plusieurs reprises rappelé le principe de la présomption d'innocence. Sa diffusion le 27 août 2007 pouvait paraître prématurée, mais cela s'expliquait par la nécessité d'exculper Dominique de Buman, à la veille des élections fédérales auxquelles celui-ci se présentait.
Par arrêt du 21 décembre 2007, la Chambre pénale du Tribunal cantonal de l'Etat de Fribourg a déclaré irrecevable le recours formé par C._: le droit cantonal ne prévoyait pas de recours en matière de récusation d'un juge d'instruction.
E. Par acte du 18 janvier 2008, C._ forme un recours en matière pénale. Il conclut à l'admission de sa demande de récusation, subsidiairement au renvoi de la cause à l'autorité intimée pour nouvelle décision au sens des considérants.
Le Président de l'Office se réfère à sa décision. Le Juge d'instruction et le Ministère public concluent au rejet du recours dans la mesure où il est recevable.
Considérant en droit:
1. Conformément aux art. 78 et 92 al. 1 LTF, une décision relative à la récusation d'un juge pénal peut faire immédiatement l'objet d'un recours en matière pénale. L'accusé et auteur de la demande de récusation a qualité pour agir (art. 81 al. 1 LTF). Le recourant a agi dans le délai de trente jours prescrit à l'art. 100 al. 1 LTF. La décision attaquée est rendue en dernière instance cantonale, puisque le droit fribourgeois ne prévoit pas encore d'instance de recours au sens de l'art. 80 al. 2 LTF, ce qui est admissible tant que le délai prévu à l'art. 130 al. 3 LTF n'est pas échu.
2. Le recourant estime que le Juge d'instruction aurait gravement violé son droit d'être entendu en prononçant tardivement la mise en prévention, ce qui l'aurait privé des droits de partie garantis à l'art. 42 CPP/FR. Le Juge d'instruction avait en mains, dès le mois de février 2006, le rapport de la commission d'enquête et connaissait par conséquent la nature du problème et l'identité des personnes éventuellement impliquées. Ce défaut de mise en prévention aurait permis d'instruire durant 18 mois sans respecter les droits de la défense. L'avis du 23 juillet 2007, l'accès tardif au dossier, la diffusion du communiqué de presse malgré l'opposition des prévenus, seraient des indices supplémentaires de la prévention dont le magistrat ferait preuve à leur égard.
S'agissant des déclarations faites à la presse, le Juge d'instruction, après avoir diffusé un communiqué écrit, aurait donné de nombreuses interviews en commentant et amplifiant les informations, violant ainsi l'art. 72 al. 2 CPP/FR. Le but du communiqué de presse étant d'exculper publiquement l'une des personnes mises en cause, Dominique de Buman, dans la perspective des élections fédérales auxquelles il se présentait, il suffisait de se limiter à cette seule information. Le Juge d'instruction avait aussi précisé, dans sa lettre du 23 juillet 2007, qu'une nouvelle audition des prévenus n'était "pas nécessaire", donnant ainsi l'impression qu'il estimait avoir achevé son enquête et acquis une conviction de culpabilité.
2.1 S'agissant des obligations d'indépendance et d'impartialité d'un juge d'instruction, l'art. 29 al. 1 Cst. (ainsi que la disposition correspondante de la constitution cantonale) présente des garanties similaires à celles qui sont posées à l'égard des autorités judiciaires proprement dites (art. 6 CEDH et 30 Cst.); le magistrat doit instruire à charge et à décharge et est tenu à une certaine impartialité. Dans les enquêtes faisant l'objet d'une large couverture médiatique, le juge d'instruction peut être amené à se prononcer sur l'état du dossier, sans pour autant que sa conviction ne soit définitivement arrêtée (ATF 127 I 196 consid. 2d p. 200 et la jurisprudence citée). Au contraire du juge appelé à s'exprimer en fait et en droit sur le fond de la cause, lequel doit en principe s'en tenir à une attitude parfaitement neutre, le juge d'instruction peut être amené, provisoirement du moins, à adopter une attitude plus orientée à l'égard de l'inculpé; il peut faire état de ses doutes quant à la version des faits présentée, mettre le prévenu en face de certaines contradictions, et tenter de l'amener aux aveux, pour autant qu'il ne soit pas fait usage de moyens déloyaux. Le juge d'instruction ne fait donc pas preuve de partialité lorsqu'il fait état de ses convictions à un moment donné de l'enquête; cela peut au contraire s'avérer nécessaire à l'élucidation des faits. Le magistrat instructeur doit ainsi se voir reconnaître, dans le cadre de ses investigations, une certaine liberté, limitée par l'interdiction des procédés déloyaux, la nécessité d'instruire tant à charge qu'à décharge et de ne point avantager une partie au détriment d'une autre. Les déclarations du juge doivent ainsi être interprétées de manière objective, en tenant compte de leur contexte, du ton sur lequel elles sont faites, et du but apparemment recherché par leur auteur (arrêt 1P.334/2002 du 3 septembre 2002 publié in SJ 2003 I p. 174).
2.2 Contrairement à ce que soutient le recourant, on ne saurait reprocher au Juge d'instruction d'avoir délibérément retardé le moment des mises en prévention. Comme le relève l'autorité intimée, il peut se justifier d'entendre préalablement une personne à titre de renseignements, comme le prévoit expressément l'art. 88 let. a CPP/FR, en particulier lorsqu'il y a lieu de déterminer son degré d'implication dans les agissements poursuivis. Le recourant estime que le dossier transmis par la commission d'enquête suffisait pour orienter les soupçons, de sorte que les premières auditions à titre de renseignements étaient injustifiées et avaient privé les intéressés des droits qui doivent être reconnus aux prévenus dès leur première audition (art. 156 al. 1 CPP/FR). Le recourant perd de vue que le rapport de la commission parvenait à la conclusion qu'aucune infraction pénale n'avait été commise. On ne saurait dans ces circonstances reprocher au magistrat instructeur d'avoir fait preuve de prudence avant de prononcer des inculpations. Les personnes entendues ont clairement été informées de leur droit de refuser de déposer et le recourant a pu, sur sa demande, être assisté d'un avocat. Le recourant, qui a eu par la suite accès au dossier, ne soutient d'ailleurs pas qu'il aurait subi un préjudice en raison de l'absence d'inculpation. Il ne prétend pas, en particulier, que certaines déclarations n'auraient pas été faites s'il avait été immédiatement informé des soupçons portés contre lui. Il n'y a par conséquent pas de raison de voir dans la procédure suivie par le Juge d'instruction un procédé déloyal pouvant conduire à une récusation.
2.3 Par ailleurs, ni la lettre du 23 juillet 2007, ni le communiqué de presse du 27 août 2007 et les circonstances qui ont entouré sa diffusion ne font ressortir une prévention de la part du Juge d'instruction.
La lettre du 23 juillet 2007 indique clairement quels sont les reproches sur lesquels repose la mise en prévention de faux dans les titres, soit l'inscription insuffisante, au bilan, de la garantie accordée par la ville de Fribourg à la caisse de pension. Evoquant la possibilité d'une ordonnance pénale, le juge a pris la précaution d'user du conditionnel, tout en précisant que les faits n'étaient pas suffisamment graves pour justifier un renvoi devant un tribunal. Certes, en indiquant qu'une nouvelle audition n'était pas nécessaire, le juge s'est estimé suffisamment renseigné sur la base du dossier d'instruction; il s'agit toutefois là du préalable nécessaire au prononcé d'une ordonnance pénale au sens des art. 160 al. 1 et 187 al. 1 CPP/FR. En donnant aux prévenus l'occasion de s'exprimer à nouveau alors qu'il n'y était pas tenu, le magistrat s'est déclaré prêt à tenir compte des arguments que les prévenus n'auraient pas pu faire valoir jusque-là. La brièveté du délai accordé tient au fait que les parties s'étaient déjà exprimées tant durant l'enquête parlementaire qu'à titre de renseignements dans l'enquête pénale.
Les motifs du communiqué de presse ont été expliqués devant l'instance inférieure: il s'agissait d'exculper publiquement Dominique de Buman, candidat aux élections fédérales. Alors que l'affaire était largement médiatisée avant même l'ouverture de l'instruction pénale, le Juge d'instruction pouvait légitimement considérer que le public ne se satisferait pas de cette simple information, mais désirerait savoir si d'autres personnes étaient impliquées, le cas échéant lesquelles. C'est dans cette perspective qu'il a mentionné les quatre mises en prévention formelles - en ne mentionnant l'identité que de l'un des prévenus, en sa qualité de syndic de la ville de Fribourg -, expliquant en quoi consistaient les charges retenues. L'affirmation selon laquelle le juge avait "terminé ses auditions" n'est certes pas exacte, puisque les prévenus avaient encore demandé à être entendus; le juge faisait manifestement référence aux auditions déjà effectuées à titre de renseignements. Quoi qu'il en soit, le but essentiel du communiqué de presse était de renseigner sur l'état actuel des inculpations. Dans cette perspective, la possibilité donnée aux prévenus de s'exprimer encore une fois n'apparaissait pas comme un renseignement essentiel. Quant à la possibilité de prononcer une ordonnance pénale, elle n'était mentionnée qu'à titre d'hypothèse; on peut aussi y voir la volonté du Juge d'instruction de relativiser l'importance des faits poursuivis, dans l'intérêt des prévenus. Il n'y a aucune apparence de prévention.
Après la diffusion du communiqué de presse, le Juge d'instruction a dû répondre à de nombreuses questions de journalistes. Le recourant relève qu'en principe l'information doit être donnée par écrit, conformément à l'art. 72 al. 2 CPP/FR; il rappelle le principe du secret de l'instruction (art. 68 al. 2 CPP/FR) et mentionne des extraits de presse donnant l'impression que le juge aurait définitivement formé son opinion. Le Juge d'instruction affirme pour sa part que certains de ses propos auraient été déformés, ce qui semble confirmé par le fait que, dans la plupart des articles de presse, des condamnations ne sont évoquées qu'avec les réserves appropriées, conformément au principe de la présomption d'innocence. Les quelques expressions maladroites figurant dans la presse ne sauraient par conséquent lui être directement imputées.
Prises dans leur ensemble, les communications faites à la presse ne permettent donc pas d'admettre un cas de récusation.
3. Il s'ensuit que le recours doit être rejeté. Conformément à l'art. 66 al. 1 LTF, les frais judiciaires sont mis à la charge du recourant. Il n'est pas alloué de dépens (art. 68 al. 3 LTF).
Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 2000 fr., sont mis à la charge du recourant.
3. Le présent arrêt est communiqué aux parties, au Ministère public et au Président de l'Office des juges d'instruction de l'Etat de Fribourg.
Lausanne, le 11 avril 2008
Au nom de la Ire Cour de droit public
du Tribunal fédéral suisse
Le Président: Le Greffier:
Féraud Kurz