uh. thanos is crazy. he's a sociopath to the very core. "Thanos the Mad Titan." he's very much a villian, but i think what you're doing is not so much describing a good villian, and more describing a good antagonist.
thanos is a GREAT antagonist because there's clear reasoning for his villainy. it's not just, "i'm a bad guy so i have to do bad things." he does bad things because he feels they are necessary evils to accomplish a tremendous good. there's even that great line by cap "We don't trade lives." I feel like that line probably wouldn't have meant nearly as much if someone else said it, but cap is a pillar of virtue. cap, probably more than anyone else in the movie (maybe even marvel comics) is the most diametrically opposed to thanos, philosophy wise, at least. it's true they are both looking to create good, but thanos is willing to sacrifice OTHERS accomplish his goals, without even considering the global cost. Cap would do the same thing in reverse. he'd sacrifice HIMSELF without even considering the personal cost.
MCU villains tend to be lacking because there was a decision from on high to focus on the heroes, instead of the villains. this was coming after the nolan batman films where after the first one, batman had little to no character growth because the focus wasn't on him. he had his story, now let's showcase his rogue's gallery. that makes sense from a story telling perspective, especially when you have guys like heath ledger and tom hardy in your film. you give them screen time because they are amazing actors.
marvel on the other hand didn't WANT to celebrate the bad guys. philosophically, i get it but it leaves very boring villains. the russo's, i think, got to make a big deal about the bad guy. which means theres just more substance to him