Faits : A. Par jugement du 27 juin 2018, le Juge de police de l'arrondissement de la Broye a reconnu A._ coupable de dommages à la propriété, contrainte, tentative de contrainte et violation de domicile et l'a condamné à une peine pécuniaire de 180 jours-amende à 120 fr. le jour, avec sursis pendant deux ans, ainsi qu'au paiement d'une amende de 2'500 francs. Il a en revanche acquitté l'intéressé du chef de prévention de dommages à la propriété (scotch apposé sur les panneaux publicitaires) et de contrainte (véhicules et bennes disposées sur les places louées par B._). B. Par arrêt du 10 juillet 2019, la Cour d'appel pénal du Tribunal cantonal fribourgeois a rejeté l'appel de A._ et confirmé le jugement rendu le 27 juin 2018. L'arrêt de la cour cantonale se fonde sur les faits suivants. B.a. A._ a acquis un immeuble sis à D._, qui comprenait des locaux professionnels, parmi lesquels une carrosserie. Lors de l'acquisition de l'immeuble, il a repris le contrat de bail à loyer commercial qui portait sur la carrosserie et qui avait été conclu le 1er octobre 2003 entre l'ancien propriétaire des lieux et B._, titulaire de la raison individuelle Carrosserie C._. Le montant du loyer s'élevait à 1'800 fr. par mois pour l'exploitation d'une carrosserie, d'un bureau et de places de parc. Le 20 novembre 2015, A._, respectant le délai de résiliation contractuel de six mois, a notifié une résiliation de bail à loyer pour le 30 juin 2016 à B._. Le motif invoqué était que d'importants travaux de transformation allaient être réalisés dans le bâtiment. Le 17 décembre 2015, la société Carrosserie C._ Sàrl, inscrite au Registre du commerce en 2015 et dont B._ est le seul associé gérant, a saisi la Commission de conciliation d'une requête en annulation du congé et en prolongation de bail. A la suite de l'échec de la conciliation, elle a ouvert action contre A._ le 3 novembre 2016 devant le Tribunal des baux de la Broye. Par décision du 4 juillet 2017, ce tribunal a rejeté la demande déposée par la société Carrosserie C._ Sàrl au motif qu'elle n'avait pas la qualité pour agir. Par arrêt du 5 décembre 2017, le Tribunal cantonal a rejeté l'appel formé par la société Carrosserie C._ Sàrl contre la décision du 4 juillet 2015. B.b. A partir du 30 juin 2016, date pour laquelle A._ a résilié le contrat de bail à loyer commercial, B._ a connu divers incidents dans le cadre de la carrosserie. B.b.a. En juillet 2016, A._ a dispersé du silicone dans le tuyau d'aération du four à peinture de la carrosserie. En août 2016, il a brisé une caméra de surveillance que B._ avait fixée sur la façade de la carrosserie. En septembre 2016, il a percé, à intervalles réguliers, des trous dans la toiture de la carrosserie. A la fin janvier 2017, il a cassé un store et deux vitres de la carrosserie. En février 2017, il a sectionné les câbles de la ligne téléphonique de la carrosserie. Le 12 mars 2017, il a percuté volontairement à une ou deux reprises la porte de la carrosserie avec un chariot élévateur (clark). Le 14 mars 2017, il a encastré volontairement un véhicule dans le four à peinture de la carrosserie. Pour ces faits, il a été reconnu coupable de dommages à la propriété. B.b.b. Entre le 30 juin 2016 et le 14 mars 2017, A._ a exercé des pressions sur B._, qui contestait la résiliation du bail à loyer commercial, dans le but de l'obliger à quitter les lieux car il voulait réaliser d'importants travaux de transformation dans son bâtiment à partir d'avril 2017. Il a notamment bloqué l'accès à la carrosserie en déplaçant une benne devant la porte de la carrosserie, enlevé les panneaux publicitaires de celle-ci sans en informer B._ et lui a imparti un délai au 31 mars 2017 pour quitter les lieux alors que la procédure devant le Tribunal des baux était toujours pendante. Il a également commis des déprédations sur la carrosserie louée par B._. Ce dernier a été contraint de quitter les lieux pour poursuivre ses activités dans un autre endroit. Pour ces faits, A._ a été reconnu coupable de contrainte. B.b.c. Le 28 février 2017, A._ a réclamé à B._ des " indemnités de retard dans l'exécution des travaux pour cause d'occupation illicite des locaux " d'un montant mensuel de 7'200 fr. à partir du 1er mars 2017, alors que la procédure devant le Tribunal des baux de la Broye était toujours en cours. B._ ne s'est pas exécuté. Pour ces faits, A._ a été reconnu coupable de tentative de contrainte. B.b.d. Le 6 mars 2017, A._ a adressé une facture pour la location de six places de parc d'avril 2011 à juin 2016, portant la mention " ultime sommation avant poursuite ", alors que le contrat de bail à loyer commercial du 1er octobre 2003 prévoyait que la location des places de parc était comprise dans le loyer de base. Il a également adressé à B._ une facture pour ces places de parc pour les cinq années précédentes, alors que cette situation n'avait jamais fait l'objet d'une discussion préalable. Pour ces faits, A._ a été reconnu coupable de tentative de contrainte. B.b.e. Au mois d'avril 2017, A._ a pénétré sans droit dans les locaux loués par B._. Celui-ci ne lui avait pas restitué les clés et la procédure devant le Tribunal des baux de la Broye était toujours en cours. A._ a démoli la cabine à peinture de la carrosserie, le marbre (banc de mesure) et de l'outillage. Il a agi de la sorte dans le but d'empêcher B._ de retourner dans les locaux de D._ et d'y reprendre son activité de carrossier en cas de réparation du four à peinture. Pour ces faits, il a été reconnu coupable de dommages à la propriété, contrainte et violation de domicile. C. A._ forme un recours en matière pénale auprès du Tribunal fédéral contre l'arrêt du 10 juillet 2019. Il conclut, avec suite de frais et dépens, principalement à la réforme de cet arrêt en ce sens qu'il est acquitté des infractions qui lui sont reprochées, que les conclusions civiles de B._ et de la Carrosserie C._ Sàrl sont rejetées, que les frais de procédure sont mis à la charge de ces derniers et qu'une indemnité équitable au sens de l'art. 429 CPP lui est octroyée. Subsidiairement, il requiert l'annulation de l'arrêt attaqué et le renvoi de la cause à la Cour d'appel pénal pour nouveau jugement dans le sens des considérants. Enfin, il sollicite l'octroi de l'effet suspensif.