Возврат false был не в том месте, я думаю. Попробуйте это ...
$(document).ready(function () {
$('.drop').click(function() {
var li = $(this), active = li.hasClass('active');
close();
if (!active) {
li.toggleClass('active').children('ul').toggle();
return false;
}
});
function close() {
$('.drop').removeClass('active').children('ul').hide();
}
$(document).bind('click',function() {
close();
});
});