Visto que a classe WorldCloud já pode ser instanciada enviando as stopwords, o codigo pode ser simplificado dessa forma:
def word_cloud(text_df, text_column, sentiment):
    sentiment_text = text_df.query(f"Sentiment == '{sentiment}'")[text_column]
    final_text = " ".join(sentiment_text)
    # Não necessario, pois o WordCloud já ignora as stopwords
    # words = final_text.split()
    # filtered_words = [word for word in words if word.lower() not in portuguese_stopwords]
    # filtered_text = " ".join(filtered_words)
    wordcloud = WordCloud(
        width=800,
        height=400,
        max_words=50,
        stopwords=portuguese_stopwords, # Adicionado aqui
    ).generate(final_text)
    plt.figure(figsize=(10, 5))
    plt.imshow(wordcloud, interpolation="bilinear")
    plt.axis("off")
    plt.title(f"Word Cloud for {sentiment} Reviews")
    plt.show()
 
             
             Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!
   Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!