Sachverhalt: A. Der 1980 geborene A._ bezog bereits als Kind - im Wesentlichen wegen Geburtsgebrechen und Folgen eines 1988 erlittenen Unfalls - Leistungen der Invalidenversicherung. 1997 bis 2001 absolvierte er erfolgreich eine Ausbildung zum Elektromechaniker. Ab Juli 2002 war er als "Mitarbeiter Betriebsunterhalt" angestellt. Im August 2003 meldete er sich erneut bei der Invalidenversicherung zum Leistungsbezug an. Eine zugesprochene Umschulung wurde vorzeitig abgebrochen. In der Folge gewährte ihm die IV-Stelle des Kantons Aargau mit Verfügung vom 7. Dezember 2011 eine ganze Rente ab 1. Februar 2010 (Invaliditätsgrad von 97 %). Im Juli 2012 leitete die Verwaltung von Amtes wegen ein Revisionsverfahren ein und traf weitere Abklärungen. Am 1. Januar 2011 trat der Versicherte eine neue Stelle als "Mitarbeiter Techn. Dienst / Sicherheitsbeauftragter" in einem Altersheim an (Pensum rund 20 %, weitgehend frei einteilbar). Nach Durchführung des Vorbescheidverfahrens ermittelte die Verwaltung unter Hinweis auf die neu aufgenommene Erwerbstätigkeit einen Invaliditätsgrad von nunmehr 69 %, weshalb sie mit Verfügung vom 6. August 2014 die bisherige ganze Rente per Ende September 2014 auf eine Dreiviertelsrente herabsetzte. B. Die dagegen erhobene Beschwerde wies das Versicherungsgericht des Kantons Aargau mit Entscheid vom 10. September 2015 ab mit der substituierten Begründung, die ursprüngliche Rentenzusprache sei zweifellos unrichtig gewesen. C. A._ lässt mit Beschwerde in öffentlich-rechtlichen Angelegenheiten beantragen, unter Aufhebung des Entscheids vom 10. September 2015 sei die IV-Stelle zu verurteilen, ihm über den 30. September 2014 hinaus eine ganze Invalidenrente auszurichten. Ferner ersucht er um unentgeltliche Rechtspflege. Die IV-Stelle schliesst auf Abweisung der Beschwerde. Das Bundesamt für Sozialversicherungen verzichtet auf eine Vernehmlassung.