Fatti: A. Nato e cresciuto in Germania, il cittadino sloveno A._ è entrato in Svizzera il 15 marzo 2009 ed ha ottenuto dalle autorità grigionesi un permesso di dimora UE/AELS valido sino al 14 marzo 2014 per svolgere un'attività lucrativa dipendente. Nell'ottobre 2010, egli è diventato padre di un bambino, nato dalla relazione con la cittadina elvetica B._. Il figlio è stato da lui riconosciuto nel marzo 2012. Quello stesso mese, A._ si è trasferito in Ticino con la compagna, diventata sua moglie nell'aprile 2014. B. A._ ha occupato le autorità penali svizzere ed estere nei seguenti termini: sentenza dell'Amtsgericht Frankfurt am Main del 14 dicembre 2009: riconosciuto colpevole di truffa e condannato a una pena detentiva di 10 mesi sospesa condizionalmente sino al 17 maggio 2012; sentenza dell'Amtsgericht Frankfurt am Main del 7 maggio 2010: riconosciuto colpevole di lesioni corporali e falsità in documenti e condannato a una pena detentiva di 1 anno, sospesa condizionalmente sino al 25 maggio 2013; sentenza dell'Amtsgericht Frankfurt am Main del 2 luglio 2010: riconosciuto colpevole di truffa e falsità in documenti e condannato a una pena pecuniaria di 90 aliquote giornaliere da euro 60 ciascuna; provvedimento dell'Amtsgericht Frankfurt am Main del 4 novembre 2010: determinazione della pena relativa alle tre condanne precedenti in anni 2, con un periodo di prova sino al 19 novembre 2013; sentenza della Staatsanwaltschaft Winterthur Unterland del 19 maggio 2011: riconosciuto colpevole di falsità in documenti e condannato alla pena di 30 aliquote giornaliere di fr. 110.-- ciascuna, sospesa condizionalmente con un periodo di prova di 2 anni, e a una multa di fr. 800.--; sentenza del Regionalgericht Bern-Mittelland del 25 marzo 2013: riconosciuto colpevole di reiterata falsità in documenti, truffa, appropriazione indebita, reiterata falsità in certificati, infrazione alla legge federale sulla circolazione stradale e condannato ad una pena detentiva di 22 mesi (comminata in parte quale pena aggiuntiva a quella del 4 novembre 2010), sospesa condizionalmente per 16 mesi con un periodo di prova di 5 anni, nonché a una multa di fr. 1'000.--; pronuncia del prolungamento di 1 anno del periodo di prova relativo alla pena pecuniaria inflittagli il 19 maggio 2011; pronuncia di un'ordine di assistenza riabilitativa durante il periodo di prova. C. Preso atto di tali fatti, con decisione del 30 ottobre 2013 la Sezione della popolazione del Dipartimento delle istituzioni del Cantone Ticino ha revocato ad A._ il permesso di dimora di cui disponeva, fissandogli un termine per lasciare la Svizzera. Su ricorso, detto provvedimento è stato confermato sia dal Consiglio di Stato che dal Tribunale cantonale amministrativo, pronunciatosi in merito con sentenza del 12 febbraio 2015. D. Il 25 marzo 2015 A._ ha inoltrato un ricorso in materia di diritto pubblico al Tribunale federale, con cui chiede: in via principale, che la sentenza del Tribunale amministrativo e la decisione della Sezione della popolazione vengano annullate; in subordine, che l'incarto sia rinviato alla Corte cantonale per nuovi accertamenti. Postula inoltre il riconoscimento dell'assistenza giudiziaria. 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.