More specifically, why did Polish uprisings fail in 1956, 1968, and 1970-71 but succeed in 1989? What were the main causal factors behind these differences?
First I think in 1956 and 1968 you are referring to Hungarian and Czech uprisings not Polish ones. The simple answer is that by 1989 with Gorbachev in power the East European states knew that they would not get the assistance of the Soviet military to crush the uprisings (without which Hungary 1956 would have been successful) and figured that they could not win a battle with the mass of their own population. The only regime that tried to, Romania, lost that battle as the army sided with the people.