Trouble with the spoken vowels
When I took Russian in a US high school (50 years ago), my teacher (who was a native German but to the best of my knowledge spoke Russian very well), taught us to pronounce "o" in Russian as a long English "o" and "a" in Russian as a short English "a". But I am hearing the speaker here sometimes pronounce the o as a short "a" and sometimes as a long o. Particularly as the last letter of a word. I also find her mixing the sounds of the Russian a, sometimes as a long o. Any comment or clarification?
It sounds like your teacher didn't take into account vowel reduction on unstressed vowels. It's most noticeable with о, which becomes something closer to а or sometimes schwa.
The TTS isn't perfect but it's not bad, with a few exceptions most of her pronunciations have seemed okay to me, even if the intonation is a bit strange sometimes.
Unstressed O usually becomes a short A (there are subtleties but it doesn't matter here). You'd better provide some examples which confuse you.
Keep in mind that the English "o" tends to be much longer than the Russian "o". Round your lips and keep it short.
Then vowel reduction comes into play when the "o" is not accented. Russian "o" sounds like "ah" in the position just before the stress. In all other unstressed positions, it sounds like "uh" (schwa).
Others have said it, but I just want to give the example that really drove this home for me, and that's the word "яблоко" which is (to my ear) pronounced like "yabluhkuh" and not "yablohkoh".