It’s because democrats are unwilling or unable to deliver on real policies for working people. Of course, republicans are the same, but they more or less don’t even pretend to, choosing instead to whip up their constituents with culture war nonsense. Nobody has any faith in things improving. Repubs just want to get revenge on their cultural enemies, and democrats (voters) just want to prevent a total slide toward the far right.
Dem politicians can’t whip up excitement because it is impossible to get people excited by neoliberal policies, but that’s really all they have. Vague platitudes only work so many election cycles in a row before voters just can’t even pretend to be excited anymore.
tl:dr republicans are awful but at least their base believes in them.