In a plain reading of the text it seems that Bilam acted righteously. He always did as Hashem commanded, prostrated immediately before the angel that he met, blessed the Jewish people and forthrightly stuck to his principle in following Hashem's instructions the whole way through Bamidbar chapters 22 - 24.
When Bilam fist met with messengers from Balak's party, Bilam asks Hashem if he should go, Hashem replies (22:12):
וַיֹּאמֶר אֱלֹהִים אֶל-בִּלְעָם, לֹא תֵלֵךְ עִמָּהֶם; לֹא תָאֹר אֶת-הָעָם, כִּי בָרוּךְ הוּא
Bilam tells Balak's party that he cannot go, on account of Hashem's edict; he send's Balak's party on their way... "more honourable" servants return after giving word to Balak to curse the Jewish people. Yet, still, Bilam is insistent (22:18):
וַיַּעַן בִּלְעָם, וַיֹּאמֶר אֶל-עַבְדֵי בָלָק, אִם-יִתֶּן-לִי בָלָק מְלֹא בֵיתוֹ, כֶּסֶף וְזָהָב--לֹא אוּכַל, לַעֲבֹר אֶת-פִּי יְהוָה אֱלֹהָי, לַעֲשׂוֹת קְטַנָּה, אוֹ גְדוֹלָה.
Bilam then tells these servants that he will 'sleep on it', expecting Hashem to answer him in a dream (22:20):
וַיָּבֹא אֱלֹהִים אֶל-בִּלְעָם, לַיְלָה, וַיֹּאמֶר לוֹ אִם-לִקְרֹא לְךָ בָּאוּ הָאֲנָשִׁים, קוּם לֵךְ אִתָּם; וְאַךְ, אֶת-הַדָּבָר אֲשֶׁר-אֲדַבֵּר אֵלֶיךָ--אֹתוֹ תַעֲשֶׂה.
It's not clear what the plain meaning of "אִם-לִקְרֹא לְךָ בָּאוּ הָאֲנָשִׁים" is. However, the follow up shows that Bilam did do something wrong is in Bamibar (22:22):
וַיִּחַר-אַף אֱלֹהִים, כִּי-הוֹלֵךְ הוּא, וַיִּתְיַצֵּב מַלְאַךְ יְהוָה בַּדֶּרֶךְ, לְשָׂטָן לוֹ; וְהוּא רֹכֵב עַל-אֲתֹנוֹ, וּשְׁנֵי נְעָרָיו עִמּוֹ
Despite doing something (unobviously) wrong Bilam never gives the impression that he will ever curse the Jewish people. Hashem had initially told Bilam not to go with them (period), however, it seems like this was only on the condition that he doesn't curse them; which he continuously says that he wont.
He is immediately repentant upon discovering the identity of the angel, blesses the Jewish people and always shows righteous allegiance to the word of Hashem regardless of following Balak's servants! There is obviously something that Bilam does wrong to invoke Hashem's anger. However, this is a far cry from Bilam being evil; it seems, from the plain reading of the text, that Bilam acted righteously. Do any commentaries mention this?
It was always my understanding that both Balak and Bilam had evil intentions. Balak's bad intentions are clear from the text, however, Bilam's are certainly not clear.
Was Bilam indeed evil?