Faits: A. A._, ressortissant somalien, se trouve en détention préventive depuis le 9 décembre 2008, date à laquelle le Juge d'instruction du canton de Genève l'a inculpé de meurtre (art. 111 CP), voire d'assassinat (art. 112 CP), de vol (art. 139 CP) et de tentative d'utilisation frauduleuse d'un ordinateur (art. 22 et 147 CP). Il lui est notamment reproché d'avoir, dans la nuit du 6 au 7 décembre 2008, tué B._. Il aurait également volé le sac appartenant à la prénommée et tenté de retirer de l'argent au moyen de la carte bancaire de celle-ci. A._ avait déjà été condamné par le Juge d'instruction du Bas-Valais les 3 février 2006 et 25 octobre 2006, respectivement à trois mois d'emprisonnement avec sursis notamment pour dommage à la propriété, injure et infractions d'importance mineure, et à vingt jours d'emprisonnement avec sursis pour menaces et voies de fait. Le 30 mars 2010, la Chambre d'accusation du canton de Genève (ci-après: la Chambre d'accusation) a renvoyé le prénommé en jugement devant la Cour d'assises du canton de Genève. L'audience de jugement a été fixée du 8 au 10 décembre 2010. B. Par arrêt du 11 mai 2010, le Tribunal fédéral a rejeté le recours du prévenu contre l'ordonnance de la Chambre d'accusation du 26 mars 2010, qui refusait sa mise en liberté provisoire. Il a confirmé en substance que le maintien en détention était justifié par un risque de fuite qui demeurait concret et que l'offre d'une caution de 60'000 fr. n'était pas propre à limiter ce risque de façon déterminante. Le 6 septembre 2010, A._ a déposé une nouvelle demande de mise en liberté en versant de nouveaux documents relatifs à la situation financière de sa soeur et l'origine de la caution. Dans son ordonnance du 7 septembre, la Chambre d'accusation a autorisé la prolongation de la détention avant jugement du prévenu jusqu'au 7 décembre 2010 et refusé sa mise en liberté provisoire. Elle a considéré pour l'essentiel que le risque de récidive restait concret et qu'il n'existait ni fait nouveau ni pièces nouvelles à ce propos. Par ailleurs, le risque de fuite persistait et l'augmentation du montant de la caution à 70'000 fr. ne permettait pas de garantir sa présence au jugement ni de pallier le risque de fuite. C. Agissant par la voie du recours en matière pénale, A._ demande principalement au Tribunal fédéral d'ordonner sa mise en liberté immédiate conditionnée au dépôt d'une caution de 70'000 fr. et à un traitement résidentiel au Centre Villa Flora à Sierre. Il conclut subsidiairement au renvoi de la cause à la Chambre d'accusation pour nouvelle décision dans le sens des considérants. Il requiert en outre l'assistance judiciaire. La Chambre d'accusation n'a pas d'observations à formuler et se réfère aux considérants de sa décision. Le Ministère public du canton de Genève n'a pas répondu au recours dans le délai imparti. 