Fatti: A. Giunto in Svizzera il 2 marzo 1986, il cittadino italiano A._ è titolare di un permesso di domicilio dal giugno 1988. Nel marzo 2005 egli si è sposato con la connazionale B._, pure titolare di un permesso di domicilio, dalla quale aveva avuto in precedenza i figli C._ e D._. A._, già ammonito per il suo comportamento anche dall'allora Sezione degli stranieri (18 luglio 1997), ha in passato interessato le autorità penali svizzere nei seguenti termini: decreto d'accusa del 27 luglio 1990: pena detentiva di 15 giorni per tentata truffa e falsità in documenti; decreto d'accusa del 4 dicembre 1992: 10 giorni d'arresto, sospesi condizionalmente con un periodo di prova di 1 anno, per ripetuta contravvenzione alla LF sugli stupefacenti e sulle sostanze psicotrope (giugno 1992-25.10.1992); sentenza del 28 novembre 1994 del Giudice istruttore del Canton Soletta: 12 giorni di arresto, sospesi condizionalmente con un periodo di prova di 2 anni e multa di fr. 900.--, per infrazione grave alle norme della circolazione; sentenza del 28 marzo 1996 della Corte delle assise correzionali di Lugano: pena detentiva di 2 anni e 2 mesi ed espulsione dalla Svizzera per 7 anni, quest'ultima pena sospesa condizionalmente con un periodo di prova di 5 anni, per ripetuti atti preparatori punibili di rapine (20.5.-3.6.1995), furto d'uso (1/3.6.1995), abuso di targhe (1/3.6.1995), furto (22.3.-22.5.95), infrazione e contravvenzione alla LStup (fine 1993 e giugno 1995), falsità in documenti (maggio 1995), favoreggiamento (22.03.-3.6.1995), truffa (ottobre 1994-maggio 1995), ripetuta circolazione malgrado revoca (29.11.94; 20.5.-3.6.1995), condanna inflittagli tenuto conto che egli aveva agito in stato di scemata responsabilità; decreto d'accusa del 21 dicembre 1999: 20 giorni di arresto, sospesi condizionalmente con un periodo di prova di 1 anno, per ripetuta circolazione senza licenza di condurre; sentenza del 17 dicembre 2009 della Corte delle assise correzionali di Lugano: pena detentiva di 36 mesi, di cui 21 mesi sospesi condizionalmente con un periodo di prova di 5 anni, avendo agito in stato di scemata imputabilità, per infrazione aggravata alla LStup (agosto 2008-8.6.2009), importazione, acquisto e deposito di monete false (gennaio-febbraio 2009), infrazione alla LF sulle armi (nel 2008) e contravvenzione alla LStup (agosto 2008-8.6.2009). In quest'ultima occasione nei suoi confronti è inoltre stato ordinato un trattamento ambulatoriale ai sensi dell'art. 63 CP, da eseguirsi già durante l'espiazione della pena e da continuare al momento della scarcerazione, avvenuta il 7 settembre 2010. B. Sulla base dei fatti citati, richiamati segnatamente sia l'ammonimento pronunciato il 18 luglio 1997 dall'allora Sezione degli stranieri sia la sentenza del 17 dicembre 2009, il 25 agosto 2010 la Sezione della popolazione del Dipartimento delle istituzioni del Canton Ticino ha revocato il permesso di domicilio CE/AELS a A._, per motivi di ordine pubblico. Essa gli ha quindi intimato di lasciare il territorio elvetico entro il 25 settembre 2010. Tale provvedimento è stato confermato su ricorso, dapprima dal Consiglio di Stato, con decisione del 7 dicembre 2010, quindi dal Tribunale cantonale amministrativo, che si è espresso in merito con sentenza del 2 luglio 2012. C. Il 10 settembre 2012, A._ ha inoltrato un ricorso in materia di diritto pubblico al Tribunale federale con cui chiede l'annullamento della sentenza cantonale e la pronuncia di un ammonimento. Domanda inoltre l'esonero dal pagamento di spese giudiziarie e il riconoscimento del diritto al gratuito patrocinio. Il Tribunale cantonale amministrativo si è riconfermato nelle motivazioni e nelle conclusioni della propria sentenza. Ad essa hanno fatto in sostanza rinvio anche la Sezione della popolazione e l'Ufficio federale della migrazione. Il Consiglio di Stato si è invece rimesso al giudizio di questa Corte.