Ja, sie sind Synonyme. Der Unterschied ist sehr fein und eigentlich nicht immer wichtig.
Vor einem vollendeten Verb (Vergangenheit) steht meistens "чуть не" (чуть не уснул, не упал, не проспал, не провалился), und das bedeutet, dass es doch nicht geschehen ist.
Vor einem unvollendetem Verb (und ich korrigiere mich, nicht nur in der Vergangenheit, sondern auch in der Gegenwart) können beide stehen, und es gibt praktisch keinen Bedeutungsunterschied; nur manche Verben werden öfter mit "чуть не" benutzt. In diesem Fall gibt es keine Regeln, aber Google kann im Zweifelsfall helfen:
"чуть не плачет" - 341.000 Ergebnisse
"почти плачет" - 63.900 Ergebnisse