Sachverhalt: A. X._ ist albanischer Staatsangehöriger. Er gelangte 1991 in die Schweiz und wohnt seit 1993 in der Politischen Gemeinde Oberriet. Im Alter von rund sechs Monaten erlitt er bei einer medizinischen Behandlung eine Nervenverletzung an der Wirbelsäule. Seine Motorik ist seither geschädigt, und er ist zur Fortbewegung auf einen Rollstuhl angewiesen. Zwischen 1994 und 1998 war er in einer Behindertenwerkstatt in Altstätten beschäftigt. Seit 1998 geht X._ keiner Erwerbstätigkeit mehr nach. Er lebt zusammen mit seiner Mutter und seinem Bruder sowie dessen Familie. B. Am 1. Oktober 2002 stellte X._ ein Gesuch um Einbürgerung. Der Einbürgerungsrat der Politischen Gemeinde Oberriet teilte ihm daraufhin mit, das Gesuch werde zurückgestellt, bis seine Integration verbessert sei. Am 13. Juli 2004 stellte X._ erneut einen Antrag auf Erteilung des Bürgerrechts. Der Einbürgerungsrat stufte nunmehr die Voraussetzungen zur Einbürgerung als erfüllt ein und beantragte der Stimmbürgerschaft die Einbürgerung von X._. Diesem Antrag folgte die Bürgerversammlung vom 31. März 2006 aber nicht und lehnte die Erteilung des Bürgerrechts ab. Mit Schreiben vom 15. November sowie vom 7. und 28. Dezember 2006 ersuchte X._ um die Wiederaufnahme des Einbürgerungsverfahrens. Der Einbürgerungsrat erachtete die Voraussetzungen für die Einbürgerung nach wie vor als gegeben und stellte der Stimmbürgerschaft an der Bürgerversammlung vom 30. März 2007 erneut den Antrag, X._ das Bürgerrecht zu erteilen. Die Stimmbürgerschaft lehnte den Einbürgerungsantrag jedoch wiederum ab. Gegen den Beschluss der Stimmbürgerschaft vom 30. März 2007 erhob X._ Beschwerde ans Departement des Innern des Kantons St. Gallen, welches diese mit Entscheid vom 14. Juli 2008 guthiess, den ablehnenden Beschluss der Stimmbürgerschaft aufhob und die Sache an die Politische Gemeinde Oberriet zurückwies, damit der Einbürgerungsrat die Vorlage der Bürgerschaft an der nächsten Bürgerversammlung erneut unterbreiten könne. Gleichzeitig wurde die Politische Gemeinde Oberriet darauf aufmerksam gemacht, dass bei einer neuerlichen rechtswidrigen Ablehnung der Einbürgerungsvorlage die Einbürgerung aufsichtsrechtlich angeordnet werden könnte. Gegen diesen Entscheid führte der Gemeinderat Oberriet am 15. Juli 2008 Beschwerde beim Verwaltungsgericht des Kantons St. Gallen. Er zog das Rechtsmittel in der Folge am 26. August 2008 zurück, worauf das Beschwerdeverfahren abgeschrieben wurde. Der Einbürgerungsrat stellte der Bürgerversammlung vom 27. März 2009 abermals den Antrag, X._ das Bürgerrecht zu erteilen. An der Bürgerversammlung äusserten sich mehrere Personen zum Einbürgerungsgesuch. Im Anschluss daran lehnte die Stimmbürgerschaft den Einbürgerungsantrag mit grossem Mehr ab. Mit Eingaben vom 3. und 24. April 2009 erhob X._ Abstimmungsbeschwerde beim Departement des Innern. Dieses wies die Beschwerde mit Entscheid vom 11. Dezember 2009 ab. Mit Eingabe vom 28. Dezember 2009 reichte X._ Beschwerde beim Verwaltungsgericht ein. Mit Verfügung vom 25. Januar 2010 wies der Präsident des Verwaltungsgerichts das von X._ gestellte Gesuch um unentgeltliche Rechtspflege ab. Hiergegen erhob X._ Beschwerde beim Bundesgericht, welches die Beschwerde mit Urteil vom 15. Juni 2010 guthiess. Mit Verfügung vom 6. Oktober 2010 hiess das Verwaltungsgericht das Gesuch von X._ um unentgeltliche Rechtspflege gut. Mit Urteil vom 31. Mai 2011 wies das Verwaltungsgericht die Beschwerde von X._ ab. C. Mit Eingabe vom 7. Juli 2011 führt X._ subsidiäre Verfassungsbeschwerde mit den Anträgen, das Urteil des Verwaltungsgerichts aufzuheben und seinem Einbürgerungsgesuch zu entsprechen, das heisst, ihn aufsichtsrechtlich einzubürgern. Eventualiter sei die Angelegenheit zur Neubeurteilung an die Vorinstanz zurückzuweisen. Des Weiteren sei ihm die unentgeltliche Rechtspflege zu gewähren. Das Verwaltungsgericht, das Departement des Innern und die Politische Gemeinde Oberriet beantragen in ihren Vernehmlassungen die Beschwerdeabweisung. In seiner Eingabe vom 28. September 2011 hält der Beschwerdeführer an seinen Rechtsbegehren fest.