By my reading, what's happened is that during the 1990s and following the Reagan Revolution, the mainstream of both parties more or less reached a consensus on neoliberal economic issues, e.g., free trade. There were, of course, differences on taxation, with the GOP firm believers in supply-side shit but moderate Dems not being too far off. Both were wrong on this, of course, as the benefits didn't "trickle down" to the working class, which now felt abandoned by the Party of Labor.
To separate themselves from the Democrats, the GOP began to fully embrace all the "culture war" shit, demonizing immigrants, gays, minority groups, the "coastal elite," and Murphy Brown wanting a kid, with Pat Buchanan and Rush Limbaugh leading the charge, slowly winning over Labor who felt threatened by all three. This, in turn, led to the Democratic Party basically becoming a loose coalition of the downtrodden trying to keep their shit together by watching each others' backs.
So, yeah, you've been correct in your thesis all this time about Dems needing to win back labor. And since Obama, the progressive branch has been proposing all sorts of economic reforms, but keep getting accused of being Marxists, a message that Republicans and moderate Dems have both used to gain/retain power in primary and general elections alike. Meanwhile, progressives keep getting pulled into the sexy culture wars by trying to protect all these out-groups from personal attacks.
What's the solution, then, in your opinion?
Abandon the disfavored in the culture wars and just be neoliberal moderates, hoping to win back Labor (a bloc that now consistently votes against their economic interests in elections?
Go full-force Far-Left, waging a war on both billionaires and the culture war-supporting evangelicals?
Just be the Party of Labor with progressive economic/fiscal policies only, while ignoring human rights and civil liberties altogether?