Hier handelt es sich um ein Lehnwort aus dem griechischen βούτυρον oder dem lateinischen butyrum. Vielleicht war daher das Geschlecht des Wortes nie ganz klar. Siehe dazu auch folgende Fragen hier:
In unterschiedlichen Regionen Deutschlands wurde zum Teil wie im Latein ein Neutrum gebildet, aber es gab auch das Maskulinum. Heute hat sich das Femininum durchgesetzt. Die anderen Varianten blieben aber in den Dialekten erhalten. Über die unterschiedlichen Genus schreiben die Grimms in ihrem Wörterbuch:
Die deutschen stämme, welche das wort annahmen, schwanken in genus und flexion. ags. butere, gen. buteran f., fries butere, gen. butera, engl. butter, nnl. boter, nhd. butter, unveränderlich. ahd. aber kann in landstrichen, wo mhd. butter, gen. butteren, nhd. butter, gen. buttern m. vorkommt, auch ein männliches putiro, putirin gesetzt werden. Man spricht noch heute in Östreich, Baiern, Tirol, in der Schweiz, selbst in der Pfalz und in Franken der butter, der buttern
Auch im schwäbischen Dialekt ist Butter ein Maskulinum.
Man kann nun spekulieren, dass vielleicht das Geschlecht des ursprünglich für Butter verwendeten Wortes übernommen wurde: der Anke, das Schmalz. Dafür habe ich aber keine Belege finden können.