Sachverhalt: A. Die 1965 geborene A._ meldete sich im Juni 1991 wegen Schmerzen an einer Operationsnarbe (Herzoperation), Angstzuständen und Atemschwierigkeiten bei der Invalidenversicherung zum Leistungsbezug an. Die IV-Stelle des Kantons Solothurn führte erwerbliche und medizinische Abklärungen durch und sprach A._ mit Verfügung vom 16. Oktober 1991 rückwirkend ab Mai 1991 eine ganze Rente der Invalidenversicherung zu. Der Rentenanspruch wurde im Rahmen mehrerer Revisionsverfahren (1992, 1995, 1999, 2002 und 2007) jeweils bestätigt. Im Oktober 2010 leitete die IV-Stelle erneut eine Überprüfung des Rentenanspruchs ein und ordnete in deren Rahmen eine polydisziplinäre Begutachtung im Institut E._ an. Gestützt auf die Expertise vom 14. November 2011 hob die Verwaltung die bisher ausgerichtete ganze Rente mit Verfügung vom 7. März 2013 auf. B. Das Versicherungsgericht des Kantons Solothurn wies die dagegen erhobene Beschwerde mit Entscheid vom 2. Dezember 2014 ab. C. A._ führt Beschwerde in öffentlich-rechtlichen Angelegenheiten mit den Anträgen, es sei der kantonale Entscheid aufzuheben und ihr eine ganze Rente zuzusprechen; eventuell seien die Akten an die Verwaltung zu weiteren Abklärungen zurückzuweisen. In verfahrensmässiger Hinsicht ersucht sie um Gewährung der unentgeltlichen Rechtspflege unter Beiordnung des Rechtsvertreters als unentgeltlicher Rechtsbeistand sowie um Erteilung der aufschiebenden Wirkung der Beschwerde. Die IV-Stelle schliesst auf Abweisung der Beschwerde. Das Bundesamt für Sozialversicherungen (BSV) verzichtet auf eine Vernehmlassung.