Mean is being nasty in any way. To be mean with money, maybe the word cheap is better.
Thrifty is making choices to not spend a lot of money. Thrifty tends to mean that the person is doing it to make their life better, not to hurt someone else. Thrifty is usually thought of as a good thing.
Cunning and shrewd are pretty similar. Cunning tends to imply forethought and planning. Shrewd tends to imply a type of personality and intelligence
generous means to give much to others. Extravagant means more to spend a lot - could be to others or could be to oneself or both.
So - to actually answer the question, mean is definitely pejorative, cunning and shrewd really depend on the goal - although cunning implies a goal which is probably harder to get and maybe a process which is a bit nastier. So perhaps a bit more pejorative.
I would say that generous is definitely nicer, but I wouldn't say that extravagant is pejorative
Good question - sorry for the very long winded answer........