Odds slashed on Liberal Democrats to win Stoke by-election