A.- B._, geboren 1949, war seit 16. Juli 1989 als Bäcker bei der Firma L._ angestellt und bei der Schweizerischen Unfallversicherungsanstalt (SUVA) obligatorisch gegen die Folgen von Unfällen und Berufskrankheiten versichert. Auf Meldung vom 18. April 1995 hin klärte die SUVA die gesundheitlichen und erwerblichen Verhältnisse ab und erliess am 10. Juli 1996 eine Nichteignungsverfügung für alle Arbeiten mit Exposition zu Stäuben von Weizen und Roggenmehl sowie dem Backzusatz a-Amylase. Weiter sprach sie B._ mit Verfügung vom 1. April 1998 eine Invalidenrente auf der Basis einer Erwerbsunfähigkeit von 20 % ab 1. August 1996 und eine Integritätsentschädigung auf Grund einer Integritätseinbusse von 5 % zu. Daran hielt sie mit Einspracheentscheid vom 21. Juli 1998 fest. B.- Die dagegen erhobene Beschwerde wies das Sozialversicherungsgericht des Kantons Zürich ab (Entscheid vom 31. März 1999). C.- Mit Verwaltungsgerichtsbeschwerde lässt B._ beantragen, der kantonale Entscheid und der Einspracheentscheid der SUVA seien aufzuheben und es sei ihm eine Invalidenrente bei einem Invaliditätsgrad von 50 % sowie eine Integritätsentschädigung auf Grund einer Integritätseinbusse von 30 % zuzusprechen. Ferner ersucht er um unentgeltliche Verbeiständung. Der Beschwerde liegen ein Zeugnis des Dr. med. K._ (vom 14. April 1999) sowie eine Anzeige der P._ und des V._, Staatl. dipl. Physiotherapeuten, über zwei Behandlungstermine bei. Die SUVA schliesst auf Abweisung der Verwaltungsgerichtsbeschwerde. Das Bundesamt für Sozialversicherung lässt sich nicht vernehmen. 