Fatti: A. Il 21 ottobre 2012, attorno alle 15.40, si è verificato a W._ un incidente della circolazione, che ha visto coinvolti A._ (nato nel 1992) in veste di pedone e B._, alla guida della Porsche 911 di C._, che in quella circostanza le sedeva accanto quale passeggero. A._ e B._ avevano interrotto da alcuni mesi una relazione affettiva iniziata tre anni prima. Quel giorno, la conducente circolava su via X._ e si apprestava ad imboccare via Y._, una strada in salita che incrocia la via pedonale Z._. Dopo essersi fermata per lasciare attraversare alcune persone, l'automobile è ripartita e A._, che stava correndo sotto i portici in direzione dell'autovettura, ha improvvisamente urtato la fiancata sinistra della stessa, rimbalzando poi sul tetto e cadendo a terra sul lato opposto. Spaventata, la conducente ha proseguito la corsa, mentre il pedone è stato soccorso e trasportato in ambulanza all'ospedale. Nell'incidente ha riportato la frattura della clavicola ed escoriazioni al ginocchio destro. B. Interrogato dalla Polizia cantonale, il 20 novembre 2012 A._ ha dichiarato di essere stato investito volontariamente da B._ e di costituirsi accusatore privato. Il giorno successivo ha poi formalmente denunciato la conducente per lesioni gravi, subordinatamente semplici, ed inosservanza dei doveri in caso d'incidente. Il 28 febbraio 2013 il Ministero pubblico ha decretato il non luogo a procedere nei confronti di B._ e di C._ (riguardo a quest'ultimo per il reato di reato di omissione di soccorso) in mancanza degli elementi costitutivi di reato. Con sentenza del 12 agosto 2013 la Corte dei reclami penali del Tribunale d'appello (CRP) ha respinto un reclamo presentato da A._ contro il decreto di non luogo a procedere. C. Frattanto, il 16 gennaio 2013, C._ e B._ hanno presentato al Ministero pubblico una denuncia penale nei confronti di A._ per i reati di tentata aggressione, di danneggiamento e di diffamazione, in relazione ai danni provocati alla vettura e al fatto di essere stati denunciati ingiustamente. A seguito di un accordo tra le parti, il 12 settembre 2013 C._ e B._ hanno ritirato la denuncia. Il 4 ottobre 2013 il Procuratore pubblico (PP) ha nondimeno aperto l'istruzione penale nei confronti di A._ per il reato di denuncia mendace (art. 303 CP). Con decreto d'accusa del 18 marzo 2014 lo ha ritenuto colpevole di questo capo d'imputazione, per avere il 20 e 21 novembre 2012 denunciato all'autorità B._, che sapeva essere innocente, e meglio per avere dichiarato nel verbale di polizia del 20 novembre 2012 e il giorno successivo per il tramite del proprio patrocinatore, che B._, il 21 ottobre 2012, lo aveva investito con l'autovettura provocandogli lesioni intenzionali gravi, subordinatamente semplici, quando in realtà era stato lui ad urtare intenzionalmente il veicolo. D. Statuendo sull'opposizione dell'imputato al decreto di accusa, con sentenza del 30 settembre 2015 il Giudice della Pretura penale lo ha riconosciuto autore colpevole di denuncia mendace per i fatti addebitatigli dal PP e lo ha condannato alla pena pecuniaria di 10 aliquote giornaliere di fr. 30.-- ciascuna, per complessivi fr. 300.--, sospesa condizionalmente per un periodo di prova di due anni, e al pagamento degli oneri processuali. E. Adita dall'imputato, la Corte di appello e di revisione penale (CARP) ha respinto l'appello con sentenza del 24 ottobre 2016. Ha di conseguenza confermato il giudizio di primo grado ed ha respinto l'istanza di indennizzo ai sensi dell'art. 429 CPP presentata dall'accusato, ponendo inoltre a suo carico gli oneri processuali d'appello. F. A._ impugna questa sentenza con un ricorso in materia penale al Tribunale federale, chiedendo di essere prosciolto dall'imputazione di denuncia mendace. Postula inoltre che le spese giudiziarie della procedura cantonale siano poste a carico dello Stato del Cantone Ticino e che lo stesso sia obbligato a rifondergli un'indennità di fr. 43'332.-- per le spese di difesa. Il ricorrente fa valere la violazione degli art. 9 e 29 Cost., del principio "in dubio pro reo" e degli art. 12 e 303 CP. G. La Corte cantonale ha comunicato di rinunciare a presentare osservazioni al ricorso, rinviando ai considerandi del suo giudizio. Il Ministero pubblico non si è espresso.