похоже, что вместо setTimeout вы ищете set Interval .Это может помочь убрать часть сложности вашего кода.
После этого просто вызовите hide или fadeOut перед fadeIn, как предложил Чич.
Используя setInterval, мы могли бы переписать вашу функцию как:
var words = [
"Aaron",
"John",
"Megan"
];
index = 0;
var myWordFadeInterval = setInterval(function(){
wordslide();
}, 2000);
function wordslide(){
$('.title-case:eq(0)').html('<div class="img-title">'+words[index]+'</div>.fadeOut(1000).fadeIn(1000)');
index++;
if (index == words.length)
index = 0
}
//when you want to stop your interval call:
//clearInterval(myWordFadeInterval);
Первый параметр вашего fadeIn / fadeOut - время больше информации