Hang on in there!
It gets easier, honestly it does.
2-3 is a really hard time. It feels like a slog but honestly you’ll get through it.
My twins are 10 yo now and I look back to when they were two and genuinely wonder how I survived it.
But they are lovely now. They are incredibly well behaved. They are regularly complimented on their manners. They make friends everywhere they go and do well in school. They get on really well and are good friends.
They are easy and funny and they make me so proud. Other parents regularly tell me how lucky I am.
But when they were 2.5 they were non stop whirling Tasmanian Devils (think Warner Bros cartoon) who could destroy a room in about 30 seconds, would remove each other’s clothes and nappies, pull over furniture, help each other climb over stair gates and cheerfully but viciously bite each other black and blue. And they never bloody slept.
But we got through it. And it was worth it. And you will too.
And you are a good parent and he will make you happier. You just have to hang on a bit longer.
And I know that right now 6 months feels like forever. I remember that well.
But it isn’t forever.
Standing firm in the daily battles you have now will stand you in good stead later.
That fact that he’s hard work now doesn’t mean he’ll be hard work forever.
One day you too may smile, grit your teeth and try not to throw something at the people who tell you that you are “lucky” to have such an “easy” child. 
You’re just tired. It’s normal.
It’s really awful, but it’s normal.
Hang on in there, the sun will come up soon.