Faits: A. X._, ressortissante française née en 1978, est entrée en Suisse le 1er novembre 1997. Après avoir accompli quatre saisons de travail au Pays-d'Enhaut (VD) dans le domaine de la restauration, elle a été mise au bénéfice d'une autorisation de séjour à l'année dans le canton de Vaud le 4 octobre 2001. Elle a pris domicile à La Tour-de-Trême le 3 février 2007 et a obtenu une autorisation d'établissement dans le canton de Fribourg le 9 février 2007. Par jugement du Tribunal pénal de la Gruyère du 28 août 2008, la prénommée a été condamnée à une peine privative de liberté de quatre ans, ainsi qu'à suivre un traitement psychiatrique ambulatoire, après avoir été reconnue coupable de tentative de meurtre par dol éventuel. Le 29 octobre 2007, elle avait en effet poignardé le compagnon de son amie avant de l'abandonner à son sort. Placée en détention préventive dans le canton de Fribourg dès le 31 octobre 2007, X._ a a été transférée le 15 décembre 2008 à la Prison de la Tuilière, à Lonay (VD), où elle a été libérée conditionnellement le 30 juin 2010. Elle a été soumise à une assistance de probation jusqu'au 31 octobre 2011, ainsi qu'à la poursuite du traitement thérapeutique en cours. B. Dans son rapport du 5 février 2008, l'expert psychiatre mandaté par le Tribunal pénal de la Gruyère a posé le diagnostic de trouble de l'adaptation avec perturbation mixte des émotions des conduites ainsi que de trouble de la personnalité à traits dépendants au moment des faits. Il a considéré que le risque de récidive apparaissait comme faible compte tenu du caractère exceptionnel du passage à l'acte et de l'absence d'antécédents. Le 24 mai 2011, le médecin chef de la clinique du Centre psychosocial de Fribourg a relevé que X._ continuait à nier les faits qui lui étaient reprochés, de sorte que le risque de récidive était réel en cas de nouvelles ruptures relationnelles. Le 5 juillet 2011, le Service de probation du canton de Fribourg a précisé que l'intéressée était collaborante, qu'elle disposait d'un emploi fixe et qu'elle avait commencé à rembourser les frais de justice mis à sa charge et à payer l'indemnité due à la victime de son acte. C. Par décision du 12 septembre 2011, le Service de la population et des migrants du canton de Fribourg (ci-après: le Service de la population) a révoqué l'autorisation d'établissement de X._ et lui a imparti un délai de trente jours pour quitter la Suisse. Saisi d'un recours contre cette décision, le Tribunal cantonal du canton de Fribourg (ci-après: le Tribunal cantonal) l'a rejeté par arrêt du 3 avril 2012. Il a retenu que la révocation litigieuse était fondée au regard des art. 63 al. 1 let. b de la loi fédérale sur les étrangers du 16 décembre 2005 (LEtr; RS 142.20) et 5 de l'annexe I de l'Accord du 21 juin 1999 entre la Confédération suisse, d'une part, et la Communauté européenne et ses Etats membres, d'autre part, sur la libre circulation des personnes (ALCP; RS 0.142.112.681). En outre, la mesure d'éloignement ordonnée respectait le principe de proportionnalité. D. Agissant par la voie du recours en matière de droit public, X._ demande au Tribunal fédéral, sous suite de frais et dépens, d'annuler l'arrêt du 3 avril 2012 et de renouveler son permis d'établissement. Elle requiert également que son recours soit doté de l'effet suspensif. Elle se plaint d'une application erronée des art. 63 LEtr et 5 de l'Annexe I ALCP, ainsi que d'une violation du principe de proportionnalité. Le Tribunal cantonal et le Service de la population renoncent à formuler des remarques, se réfèrent aux considérants de l'arrêt entrepris et concluent au rejet du recours. L'Office fédéral des migrations propose également de rejeter le recours. Dans ses déterminations sur les prises de position des autres participants à la procédure, X._ a maintenu les conclusions formulées dans son recours. Par ordonnance du 14 mai 2012, le Président de la IIe Cour de droit public du Tribunal fédéral a admis la demande d'effet suspensif.