TfidfVectorizer имеет атрибут norm
(см. документы ), который решает эту проблему. Попробуйте, например, что-то вроде этого:
vectorizer = TfidfVectorizer(analyzer='word', stop_words='english', norm='l2')
Это нормализует векторы для учета различий в длине документа.