Q:

Emploi de "tous" avec "on"

Peut-on dire la phrase suivante:

Ne t'inquiète pas - on a tous des moments difficiles.

ou devrait-on utiliser plutôt tout?
Si c'est 

... nous avons tous des moments difficiles.

il n'y a aucun doute.

A:

L'accord avec le pronom on quand il sert de première personne du pluriel (la forme familière de nous) est un peu bizarre. Le verbe principal est toujours à la troisième personne du singulier (accord grammatical). S'il y a un participe ou un adjectif qui s'accorderait, il est en général au singulier, mais on trouve de plus en plus le pluriel. Les compléments moins directement attachés au verbe sont au pluriel (accord sémantique).

On est [sing.] arrivé(s) [sing., quelquefois plur.] au but.
On n'est [sing.] pas sorti(s) [sing., quelquefois plur.]¹ de l'auberge.
On est [3e sing.] bon(s) [sing.] pour se faire saucer².
  On est [3e sing.] les meilleurs [plur.] des moments difficiles.
  On a [3e sing.] tous [plur.].  

Pour les cas ambigus, avec un adjectif, j'ai l'impression on a plus tendance à mettre l'adjectif au pluriel quand il est féminin, peut-être parce qu'il y a déjà un accord sémantique à faire : « on est bonnes pour … », « on n'est pas soumises », etc. Pour le pronom tous, le pluriel est obligatoire (on peut dire « tout le groupe » au singulier, mais ce n'est pas employé lorsque le concept de groupe n'est pas explicite et mis en avant) : « on a tous … », « on a toutes … ».
Comme il s'agit d'une tournure orale, l'écrit devrait suivre l'oral. Même si l'usage dominant à l'écrit est le singulier (influencé par l'accord grammatical classique), la langue demande le pluriel, et on devrait transcrire cette tournure orale systématiquement avec un pluriel.
¹  À cause d'un bug de Ngram Viewer, il faut re-cliquer sur « Search » pour voir le graphe. 
²  Se faire saucer (familier) = se prendre la pluie.  

