I think you are making a number of assumptions about American politics, some of which are unwarranted. There were in fact several reasons that came together to give Mr. Trump 46% of the popular vote. Those reasons range from the simple, but key, fact that a very large percentage of the electorate on both sides of the aisle habitually (and invariably) vote for the same party in election after election, to the much more nuanced affect that decades of neoliberal policies had on the Democrat's prospects. Let's talk about the latter.
Go back 40 or more years in this country, and the Democrats are in many respects ideologically and in practice aligned with not only most of the middle class, but especially with the economic interests of the working class. That begins to change under Mr. Carter. Over the following decades, the Party shifts its core alignment from the economic interests of the working class to the interests of the managerial class. This understandably leaves the working class feeling abandoned. Many become Republicans in response to social issues, but the Republicans are no more interested in their economic interests than are the new -- or neoliberal -- Democrats.
Enter Mr. Trump. In 2016, he runs as a Washington outsider and populist on -- among other things -- economic promises attractive to the working class, such as a better universal healthcare system than "Obamacare". Several of Mr. Trump's 2016 economic ideas were left of center among the elites, and center among the masses. They got him a lot of votes, along with several other factors, such as his promise to appoint judges that would overthrow Roe v Wade and allow for the criminalization of abortion, his racism, his misogyny, etc. All of those things and more contributed to his getting 46.1% of the vote. Of course, as we all know now, Mr. Trump dropped most of his economic populism the moment he got elected, and the working class once again got screwed.