Faits: A. A._, ressortissant américain, se trouve en détention préventive depuis le 25 novembre 2008, sous l'inculpation d'infraction à l'art. 19 al. 2 de la loi fédérale du 3 octobre 1951 sur les stupéfiants et les substances psychotropes (LStup; RS 812.121), voire de blanchiment d'argent (art. 305bis CP). Il lui est notamment reproché d'avoir, à tout le moins depuis l'année 1999, participé à un trafic de drogue et d'avoir pris les mesures nécessaires pour récupérer le produit dudit trafic en détenant dans un coffre-fort auprès de la banque UBS les sommes de 88'920 livres sterling, de 55'950 euros, de 84'000 dollars et de 45'000 francs suisses. La plupart de cet argent était en petites coupures, certaines réagissant positivement à la cocaïne lors du test "ionscan". Le prénommé aurait aussi versé sur son compte auprès de la banque UBS la somme de 1'459'199 dollars en espèces du 20 juillet 1999 au 2 novembre 2007, ainsi que la somme de 94'000 livres sterling du 4 octobre 2007 au 14 octobre 2008, la provenance des fonds n'étant pas établie. L'intéressé a reconnu les faits dans leur large majorité. Le 16 décembre 2009, le Juge d'instruction du canton de Genève (ci-après: le Juge d'instruction) a communiqué la procédure pénale au Procureur général du canton de Genève, l'instruction préparatoire ayant pris fin. Par ordonnance du 30 mars 2010, la Chambre d'accusation de la Cour de justice du canton de Genève (ci-après: la Chambre d'accusation) a renvoyé A._ en jugement devant la Cour correctionnelle sans jury du canton de Genève (ci-après: la Cour correctionnelle), pour infractions graves à la LStup et blanchiment d'argent aggravé. L'audience de jugement devant la Cour correctionnelle a été fixée au 15 décembre 2010. B. La détention préventive du prénommé a été régulièrement prolongée. Le 12 juillet 2010, A._ a formé une demande de mise en liberté provisoire. Par ordonnance du 16 juillet 2010, la Chambre d'accusation a rejeté cette demande. Elle a considéré en substance qu'il existait un risque très élevé de fuite. C. Agissant par la voie du recours en matière pénale, A._ demande principalement au Tribunal fédéral d'annuler cette ordonnance et de prononcer sa mise en liberté immédiate aux conditions qu'il plaira au Tribunal de céans de fixer. Il conclut subsidiairement au renvoi de la cause à l'instance précédente pour nouvelle décision dans le sens des considérants. Il requiert en outre l'assistance judiciaire. La Chambre d'accusation se réfère aux considérants de l'ordonnance attaquée. Le Ministère public du canton de Genève conclut au rejet du recours. Le recourant a répliqué. 