Is there any rule to know whether I should pronounce the "O" as an "a:" or reduce it to schwa? Like in Spot, contact and context the "o" is pronounced as a long "a." And in connection, contemporary and confuse the "O" is reduced to schwa. So, are there any rules for that, because god knows this is too hard to recognize on my own especially if I'm reading an article, a book or a textbook.

I usually check my dictionary and I definitely listen to how Americans pronounce words, so I can automatically pronounce these words correctly by myself without the need for checking my dictionary.

1 2
Comments  (Page 2) 
Here is the concise paper on syllabication and stress.

Evidence for variable syllabic boundaries in English: Charles-James N. Bailey

Students: We have free audio pronunciation exercises.