Olá! theskintman,
Eu penso que você está vendo os efeitos de uma chamada assíncrona aqui, a variável não está sendo ajustado ao “sucesso” antes que a linha que retorna um valor execute!
Você pode forçar a chamada do ajax dos jQuery para funcionar synchronously ajustando a propriedade “async” a falso. Esta não pode ser a melhor maneira de trabalhar com seu código - pode-se ser que sua rechamada do sucesso poderia actuar mais diretamente em sua página ou os dados e você seriam melhores considerando que… em todo caso o seguinte pode dar resultados mais inline com suas intenções: