Is 'besto' somehow negatively connotated or is it the neutral word for animal?
It's the usual neutral word for animal. There's also "animalo" which includes human whereas "besto" explicitly excludes human.
Then I guess "besto" is closer to "beast", but without any negative connotation.
The word "besto" does not exclude humans. It is exactly equivalent to the English word "animal".
It's a shame that people like to complicate things which ought to be simple.
On the other hand, you could say people are simply trying to make distinctions, adding nuance to the language, which is a good thing! :)
Many languages distinguish, including people considering it offensive if one uses the wrong word. For example in German, an animal can "frisst" while I human would "isst," because beasts eat differently from civilized humans. English doesn't have the distinction, but many English speakers do distinguish between the biological meaning of animal and the "practical" meaning. So, having two words helps convey that thought process.
This appears to be a reference to what I say here:
and "bestaĉo is indeed a nasty animal, but that's not quite what beast means."
That is what I say when someone tries to interrupt my meal.
Tio estas kion mi diras kiam oni provas interrompi mian manĝadon.
Because "besto" is simply the normal word in Esperanto for "animal". It doesn't have the additional connotations connected with the English word "beast".
"Animalo" is a scientific word - it's means a member of the biological class animalia. Here's the definition in PIV: "Eŭkariota vivulo (ss plurĉela, vs k ark. ankaŭ unuĉela) sen klorofilo, kies ĉelmuroj ne konsistas el celulozo, ĝenerale kapabla senti k sin movi; kn de bestoj k homoj." "Besto" is the normal word for animal in Esperanto. Here are the two definitions from PIV: "1 Ĉiu animalo escepte de homo. 2 Homo stulta aŭ kruda kiel besto." Note that the word "besto" belongs to the Fundamento de Esperanto, while "animalo" was only recognized by the Academy in 1974.