it is because of animation queue where you have a delay of 5000ms queued, you need to clear the queue before calling fadeOut()
in button 2 click
$('.btn1').click(function () {
$('.obj1').fadeIn(100, function () {
$(this).delay(5000).fadeOut(100);
});
});
$('.btn2').click(function () {
$('.obj1').stop(true, true).fadeOut(100);
});
Demo: Fiddle