Faits : A. A.a. Le 29 janvier 2019, la Commune de U._ a requis, dans la poursuite en réalisation de gage immobilier n° xxxxxx de l'Office des poursuites de la Gruyère (ci-après: l'Office des poursuites), la vente de l'immeuble art. yyy du registre foncier de la Commune de U._, propriété de A._. L'Office des poursuites a fait établir une expertise immobilière afin de déterminer la valeur vénale de l'immeuble. Le rapport d'expertise établi le 6 juin 2019 retient une valeur résiduelle de 810'000 fr. A.b. Le 21 juin 2019, l'Office des poursuites a établi le procès-verbal d'estimation du gage, retenant une valeur estimative du gage de 810'000 fr. A.c. Par courrier du 2 juillet 2019, A._ a contesté l'expertise et sollicité une nouvelle estimation de l'immeuble. A.d. Par acte judiciaire du 29 juillet 2019, réexpédié sous pli recommandé le 31 juillet 2019, la direction de la procédure a invité la requérante à effectuer une avance de frais de 4'000 fr. dans un délai de 20 jours, à défaut de quoi la requête serait déclarée irrecevable. A.e. Par courrier posté le 13 septembre 2019, A._ a informé la direction de la procédure qu'elle n'avait pas réceptionné le courrier l'enjoignant à payer une avance de frais. Elle a expliqué que son courrier était habituellement systématiquement dévié à V._ et qu'elle ne s'expliquait pas pourquoi la lettre du 29 juillet 2019 ne lui était pas parvenue. A.f. Par arrêt du 17 septembre 2019, la Chambre des poursuites et faillites du Tribunal cantonal fribourgeois a déclaré la requête du 2 juillet 2019 irrecevable pour défaut de versement de l'avance de frais dans le délai imparti. B. Par acte posté le 4 octobre 2019, A._ exerce un recours en matière civile au Tribunal fédéral contre l'arrêt du 17 septembre 2019. Elle conclut à sa réforme en ce sens que sa requête du 2 juillet 2019 est déclarée recevable, que la demande d'avance du 29 juillet 2019 est déclarée nulle et non avenue, et qu'un nouveau délai de 20 jours lui est imparti pour effectuer l'avance de frais de 4'000 fr. Subsidiairement, elle sollicite le renvoi de la cause à l'autorité cantonale pour nouvelle décision dans le sens des considérants. Pour le surplus, elle requiert d'être mise au bénéfice de l'assistance judiciaire pour la procédure fédérale. La cour cantonale a renoncé à se déterminer. L'Office des poursuites n'a pas répondu. C. Par ordonnance présidentielle du 4 novembre 2019, la demande d'effet suspensif assortissant le recours a été admise.