Erwägungen:
1.
1.1. A._ wohnt in U._ in Liechtenstein und betreibt dort eine Metzgerei. Zudem führt er in V._ (Gemeinde X._) einen Hof und hält dort Schweine, Schafe, Ziegen und Hühner. Bei mehreren Kontrollen und Nachkontrollen auf seinem Hof zwischen August 2013 und August 2015 wurde die Tierhaltung in verschiedenen Punkten beanstandet und A._ mit Strafbefehlen vom 17. Dezember 2013 und 10. Februar 2015 wegen Verstössen gegen die Tierschutzgesetzgebung verurteilt. Am 15. September 2015 erliess das Amt für Verbraucherschutz und Veterinärwesen des Kantons St. Gallen ein Tierhalteverbot. Die dagegen erhobenen Rechtsmittel wiesen das Gesundheitsdepartement des Kantons St. Gallen am 17. Oktober 2017 und das Verwaltungsgericht des Kantons St. Gallen am 20. November 2018 ab.
1.2. Mit Beschwerde vom 21. Dezember 2018 beantragt A._ dem Bundesgericht hauptsächlich, es sei von einem Tierhalteverbot abzusehen, eventualiter sei ihm das Verbot anzudrohen oder die Tierhaltung unter Auflagen zu bewilligen. In prozessualer Hinsicht ersucht er um Erteilung der aufschiebenden Wirkung. Das Verwaltungsgericht, das Gesundheitsdepartement und das Amt für Vebraucherschutz und Veterinärwesen schliessen auf Abweisung der Beschwerde. Mit dem vorliegenden Entscheid in der Sache wird das Gesuch um aufschiebende Wirkung gegenstandslos.
2.
2.1. Nach <ref-law> ist in der Begründung in gedrängter Form darzulegen, inwiefern der angefochtene Akt Recht verletzt. Die Beschwerde hat sich mit den Erwägungen des angefochtenen Entscheids auseinanderzusetzen. Zwar wendet das Bundesgericht das Recht von Amtes wegen an (<ref-law>); dies setzt aber voraus, dass auf die Beschwerde überhaupt eingetreten werden kann, diese also die minimalen Begründungsanforderungen erfüllt (<ref-ruling> E. 2.1 S. 245 f.). Strengere Anforderungen gelten, wenn die Verletzung von Grundrechten geltend gemacht wird (<ref-law>). Das Bundesgericht prüft in dieser Hinsicht nur klar und detailliert erhobene und, soweit möglich, belegte Rügen; auf rein appellatorische Kritik am angefochtenen Entscheid tritt es nicht ein (<ref-ruling> E. 2.2 S. 246). Begnügt sich der Beschwerdeführer damit, vor Bundesgericht dieselbe Rechtsschrift wie im vorinstanzlichen Verfahren einzureichen, findet von vornherein keine Auseinandersetzung mit dem angefochtenen Entscheid statt und ist auf die Eingabe nicht einzutreten (vgl. <ref-ruling> E. 2.3 S. 246 f.; Urteil 2C_601/2018 vom 3. August 2018 E. 2.1).
2.2. Im vorliegenden Fall ist die materielle Begründung der von einem Rechtsanwalt verfassten Beschwerde ("III. Materielles", S. 4 ff.) eine Kopie der Beschwerde an das Verwaltungsgericht vom 10. Januar 2018. Ziff. 10-16 und Ziff. 17-26 der Eingabe an das Bundesgericht stimmen weitgehend wörtlich mit Ziff. 9-15 und Ziff. 17-26 der Eingabe an das Verwaltungsgericht überein. Auf diese Ausführungen kann mangels Auseinandersetzung mit dem angefochtenen Entscheid nicht eingetreten werden. Lediglich auf S. 11 und S. 13 der Beschwerde an das Bundesgericht bringt der Beschwerdeführer neu vor, dass das Verwaltungsgericht seinen Gehörsanspruch verletzt habe, indem es keinen Augenschein durchgeführt habe. Die angebliche Gehörsverletzung wird indessen nicht näher begründet, obwohl sich das Verwaltungsgericht ausführlich zum Verzicht auf den Augenschein geäussert hat (vgl. E. 2 des angefochtenen Entscheids). Damit sind die strengen Begründungsanforderungen nach <ref-law> offensichtlich nicht erfüllt und kann auch bezüglich der Gehörsverletzung nicht auf die Beschwerde eingetreten werden. Weil der Begründungsmangel offensichtlich ist, erfolgt das Nichteintreten durch den Einzelrichter im vereinfachten Verfahren (<ref-law>).
3.
Bei diesem Verfahrensausgang sind die Gerichtskosten dem Beschwerdeführer aufzuerlegen (<ref-law>). Parteientschädigungen sind nicht zuzusprechen (<ref-law>).

Demnach erkennt der Einzelrichter:
1.
Auf die Beschwerde wird nicht eingetreten.
2.
Die Gerichtskosten von Fr. 1'000.-- werden dem Beschwerdeführer auferlegt.
3.
Dieses Urteil wird den Verfahrensbeteiligten, dem Verwaltungsgericht des Kantons St. Gallen, Abteilung II, und dem Bundesamt für Lebensmittelsicherheit und Veterinärwesen BLV schriftlich mitgeteilt.
Lausanne, 14. Februar 2019
Im Namen der II. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Der Einzelrichter: Haag
Der Gerichtsschreiber: Businger