Faits: A. A._, ressortissant portugais né en 1985, fait l'objet d'une instruction pénale pour vols et tentatives de vol, dommages à la propriété, utilisation frauduleuse d'un ordinateur et contravention à la LStup. Il a été placé en détention provisoire du 14 novembre 2010 au 12 mai 2011. Le 18 décembre 2011, le Tribunal des mesures de contrainte du canton de Vaud (Tmc) a ordonné une nouvelle mise en détention provisoire pour trois mois, le prévenu étant soupçonné de nouveaux vols. Le 20 février 2012, le prévenu a intégré la Fondation du Levant. Il a fugué à plusieurs reprises et, le 30 avril 2012, il a été arrêté pour deux tentatives de vol avec effraction commises les 25 et 30 avril 2012; il a admis plusieurs consommations de cocaïne, d'héroïne et de cannabis durant ses fugues. Par ordonnance du 2 mai 2012, le Tmc a refusé d'ordonner une nouvelle mise en détention provisoire, considérant que les infractions reprochées au prévenu ne compromettaient pas sérieusement la sécurité d'autrui et ne permettaient donc pas de retenir un risque de récidive. B. Par arrêt du 8 mai 2012, la Chambre des recours pénale du Tribunal cantonal vaudois a admis un recours formé par le Ministère public et a réformé l'ordonnance du Tmc en ce sens que la détention de A._ a été ordonnée pour trois mois, jusqu'au 30 juillet 2012. Compte tenu d'une condamnation en 2008 et des nombreuses infractions commises depuis novembre 2010 (plus de quarante vols au total, dont certains avec effraction), le risque de récidive était avéré. Jusqu'ici, le prévenu n'avait commis que des dégâts matériels mais on ignorait quelle pourrait être sa réaction s'il était surpris lors de ses agissements. L'expert avait diagnostiqué une schizophrénie indifférenciée et une dépendance à la drogue, ce qui accentuait l'imprévisibilité du prévenu. La détention était proportionnée à la peine susceptible d'être prononcée, et aucune mesure de substitution n'apparaissait propre à prévenir le risque de récidive. C. Par acte du 7 juin 2012, A._ forme un recours en matière pénale par lequel il demande la réforme de l'arrêt précité en ce sens que la détention provisoire est refusée, subsidiairement que des mesures de substitution sont ordonnées. Plus subsidiairement, il conclut au renvoi de la cause à l'instance cantonale pour nouvelle décision dans le sens des considérants. Le recourant demande l'assistance judiciaire. La Chambre des recours pénale et le Ministère public se réfèrent à l'arrêt attaqué, sans observations. 