Faits : A. A.a. A._, ressortissant lituanien né en 1984, fait l'objet d'une instruction pénale actuellement menée par le Ministère public de la République et canton de Genève pour traite d'être humains (art. 182 CP), abus de confiance (art. 138 CP), escroquerie (art. 146 CP), usure (art. 157 CP), faux dans les certificats étrangers (art. 252 CP cum art. 255 CP), séquestration (art. 183 CP), voies de fait (art. 126 al. 2 CP) ainsi que pour des infractions aux lois fédérales sur les étrangers et l'intégration (LEI), sur l'assurance-vieillesse et survivants (LAVS), sur la prévoyance professionnelle vieillesse, survivants et invalidité (LPP) et sur l'impôt anticipé (LIA). A.b. Il est reproché à A._, alors qu'il était le dirigeant effectif de la société B._ Sàrl, d'avoir fait travailler sur des chantiers, en Suisse, des ressortissants ukrainiens, moldaves et biélorusses sans qu'ils bénéficiassent des autorisations de travail idoines, de les avoir fait venir en Suisse en organisant leur transport et leur logement, d'avoir fourni, à certains, de fausses cartes d'identité lituaniennes ainsi que de ne pas avoir respecté les règles en vigueur quant aux obligations d'affiliation aux assurances sociales, au temps de travail et au salaire, certains ouvriers ayant perçu, pour trois semaines de travail, des salaires de l'ordre de 600 à 800 francs. Les faits se seraient déroulés en 2016 et 2017, à X._ (GE) et à Y._ (VS). Dans ce contexte, il est également reproché à A._ d'avoir séjourné sur le territoire suisse, dès mars 2017, sans avoir été au bénéfice des autorisations nécessaires. Il aurait en outre utilisé les pièces d'identité des travailleurs qu'il faisait venir pour conclure, à leur nom et à leur insu, des abonnements téléphoniques dont il était l'unique utilisateur. Le prévenu, en sa qualité de titulaire de l'entreprise individuelle "C._", ne se serait pour le reste pas acquitté de la totalité des impôts à la source dus à l'administration fiscale valaisanne et aurait librement disposé des deux véhicules de marque Ferrari et BMW qu'il avait pris en leasing, alors que les contrats avaient été résiliés et la restitution des véhicules exigée. A.c. Par ailleurs, entre 2014 et 2015, A._ aurait usé de violence physique et psychologique à l'égard de D._, son ex-compagne, alors qu'ils étaient en couple et vivaient sous le même toit, l'empêchant par exemple de sortir à sa guise de leur logement de Z._ (VD) et lui ayant à plusieurs reprises donné des gifles. A.d. A._ a été arrêté le 13 octobre 2017 à Sion. Il a été placé en détention provisoire par ordonnance du 17 octobre 2017 du Tribunal des mesures de contrainte du canton du Valais. La détention provisoire du prévenu a ensuite été régulièrement prolongée par ordonnances successives du Tribunal des mesures de contrainte du canton de Genève (Tmc), à la suite de la reprise de for par les autorités de ce canton. B. Par ordonnance du 30 avril 2019, donnant suite à la demande du Ministère public du 26 avril 2019, le Tmc a prolongé la détention provisoire de A._ jusqu'au 30 juillet 2019, retenant tant l'existence de charges suffisantes que les risques de fuite, de collusion et de réitération, qu'aucune mesure de substitution ne permettait de pallier. Le recours formé par le prévenu contre cette ordonnance a été rejeté le 27 mai 2019 par la Chambre pénale de recours de la Cour de justice genevoise. C. A._ forme un recours en matière pénale au Tribunal fédéral contre l'arrêt du 27 mai 2019. Il conclut, avec suite de frais et dépens, principalement à sa libération immédiate. Subsidiairement, il conclut à l'annulation de l'arrêt et au renvoi de la cause à l'autorité précédente pour nouvelle décision. Il sollicite en outre le bénéfice de l'assistance judiciaire. Invité à se déterminer sur le recours, le Ministère public a conclu à son rejet. Quant à l'autorité précédente, elle s'est référée aux considérants de son arrêt et a renoncé à présenter des observations.