Einen Bedeutungsunterschied zwischen "gern" und "gerne" gibt es nicht, auch in stilistischer Hinsicht ist kein Unterschied festzustellen - beide Formen gelten als gleichwertig.
Die Form mit Endungs-e ist die ältere. Wie bei vielen anderen Wörtern auch hat sich die Endsilbe im Lauf(e) der Zeit in der gesprochenen Sprache verschliffen. Da sich Sprache in einem ständigen, nie endenden Optimierungsprozess befindet, werden Endsilben, die keine grammatische Funktion erfüllen, früher oder später abgestoßen. So hört man heutzutage häufiger "gern" als "gerne". Noch deutlicher wird die Entwicklung bei ferne/fern: Heute sieht man kaum noch jemanden "von ferne" winken, meistens heißt es "von fern". Mitunter verhält sich Sprache aber auch genau anders herum und lässt Wörter länger werden, ohne dass es dafür einen erkennbaren Grund gäbe. So geschehen mit "allein", das man oft auch als "alleine" antrifft, was aber nicht der Standardsprache entspricht.