Warum ist mein Freund so respektlos?

Hallo, ich bin seit ca. 3 Jahren mit meinem Freund zusammen. Es gibt schöne Tage und leider auch Tage, an denen es einfach nur schrecklich ist. Er zieht ein Gesicht und meckert viel rum. Meiner Meinung nach ist er mit sich und seinem Leben einfach unzufrieden, obwohl es eigentlich bei ihm gut läuft. Ich bin selber sehr lebensfroh und hab meist gute Laune und unternehme gerne viel (auch mit ihm alleine, was ich aber an den Meckertagen oft bereue). Ich genieße mein Leben. Wenn ich ihn darauf anspreche was denn schon wieder los sei, kommt meist keine eindeutige Antwort. Ich lasse ihn dann meist einfach links liegen aber gleichzeitig ärgert es mich auch, da es mich meist auch mit runterzieht. Es macht mich  verrückt  wenn er mich für Dinge kritisiert die er aber auch selber genauso macht. Wenn ich ihn darauf anspreche, dann sieht er es meist aber nicht ein. 

Gestern hat er mich wieder wegen einer Nichtigkeit!!!! vor meinen Freunden rundgemacht. Wenn das jemand anderen passiert wäre, hätte er es ihnen freundlich mitgeteilt oder es versucht durch einen Witz zu mildern. Da könnte ich echt durchdrehen.... Aber es gibt eben auch die schönen Tage, an denen er bestens gelaunt ist und alles schön ist. Ich hab kein Plan was ich will. Ich habe mich schon einmal von ihm getrennt aber habe es nicht lange durchgehalten weil er mir gefehlt hat, aber manchmal denke ich , es ist einfach nur die Angst vor dem Alleinesein. Was soll ich tun?

Respektlosigkeit, schlecht gelaunt