Why does the Party not kill Winston? In other words, what is a more successful technique on their part to use instead?
The Party may actually kill Winston at the end of the novel, but we don't "see" it happen. I would say it does not kill him before that because it wants him to see the error of his ways and it wants him to accept the supremacy of the Party willingly.
I do not think there is any real reason why the Party needs to do that in "real" life. If it just killed Winston, who would know? It's not like anyone would see Winston as a martyr and use him as a symbol to cause more protests against the Party. Also, the Party does not bring him out in public and have him say "I used to be a dissident but now I love Big Brother." So there's really no practical reason for this.
Instead, I think that Orwell has the Party do this to help him make a point. He wants to show how much the Party cares about controlling the people. It wants to control them even if no one will ever find out that it did not have complete control.