I started a bj v sh thread here many years ago, and my view hasn't really changed much since. Bj is far more interesting/fun/engaging and the people are generally more chill. BUT in terms of quality of life, sh bests it by a country mile.
Furthermore, I must say that I do genuinely like being in Shanghai these days (I.e. almost no desire to travel elsewhere).
Regarding bj accents, I agree they can be annoying especially when overdone by young embassy staffers. However, I'll take that over the Mandarin that's spoken in half of the south, and er hua actually actually is proper and can sound pretty nice if subtle.