Faits :
A.
A.a. A._, né en 1963, travaillait depuis 1987 comme jardinier-paysagiste au service de l'entreprise B._ SA. Le 11 mai 2017, il a fait une chute à vélo en se réceptionnant sur l'épaule, ce qui lui a occasionné une fracture-arrachement du tubercule majeur sur luxation gléno-humérale antéro-inférieure droite. Il a été mis en arrêt de travail à 100 % dès le jour de l'accident.
A.b. La Caisse nationale suisse d'assurance en cas d'accidents (ci-après: la CNA), auprès de laquelle il était assuré obligatoirement contre le risque d'accidents, a pris en charge les soins médicaux et a versé des indemnités journalières de 183 fr. 30 par jour calendaire dès le 14 mai 2017. Ce montant a été calculé sur la base des indications données par l'employeur sur le formulaire de déclaration d'accident, selon lesquelles A._ avait un taux d'occupation de 100 % pour un horaire de travail hebdomadaire de 44.5 heures avec un salaire horaire de 30 fr. 20, auquel s'ajoutaient une indemnité pour vacances de 13,04 % ainsi qu'un treizième salaire (8,33 %), et percevait 660 fr. d'allocations familiales.
A.c. Une arthro-IRM réalisée le 26 mai 2017 a notamment mis en évidence une rupture massive des tendons du sus- et du sous-épineux de l'épaule droite Le 6 juillet suivant, le docteur C._ a procédé à une réinsertion de la coiffe des rotateurs avec une acromioplastie et une ténodèse du long chef du biceps. Du 5 avril au 9 mai 2018, l'assuré a séjourné à la Clinique de réadaptation D._ pour sa rééducation.
Dès le 11 juin 2018, l'assuré a effectué une reprise de travail à 50 %, à la suite de laquelle il a subi une re-rupture complète du tendon du sus-épineux. Le 13 décembre 2018, le docteur C._ a pratiqué une révision de la coiffe des rotateurs de l'épaule droite. Le contrat de travail de A._ a été résilié par son employeur avec effet au 31 décembre 2018.
A.d. A l'issue d'un second séjour du prénommé à la Clinique de réadaptation D._ du 4 juin au 3 juillet 2019, les médecins de cet établissement ont estimé qu'une stabilisation médicale pouvait être attendue dans un délai d'un à trois mois. Ils ont également conclu que le pronostic d'une réinsertion dans l'ancienne activité de jardinier était défavorable à long terme; en revanche, il était favorable dans une activité adaptée respectant les limitations fonctionnelles de l'assuré, soit pas d'activité en hauteur répétitive ou maintenue, pas d'activité en porte-à-faux avec le membre supérieur droit et pas de port de charges lourdes répétitives de plus de 10-15 kg (rapport du 5 juillet 2019 p. 5). L'assuré a encore été examiné le 2 octobre 2019 par le docteur E._, médecin d'arrondissement de la CNA, qui a confirmé l'appréciation des médecins de la Clinique de réadaptation D._ et a évalué le taux d'atteinte à l'intégrité à 15 % en tenant compte d'une aggravation prévisible. En outre, à la demande de la CNA, l'entreprise B._ SA a communiqué le montant du salaire que l'assuré aurait obtenu en 2017, 2018 et 2019, soit respectivement un salaire horaire de 30 fr. 20, 30 fr. 40 et 30 fr. 60 pour un horaire hebdomadaire de 44,5 heures et un treizième salaire par 8,33 %.
A.e. Sur cette base, la CNA a mis un terme au paiement des soins médicaux et des indemnités journalières avec effet au 31 octobre 2019. Par décision du 22 novembre 2019, confirmée sur opposition le 19 février 2020, elle a alloué à l'assuré une indemnité pour atteinte à l'intégrité de 15 %, mais lui a dénié le droit à une rente d'invalidité, au motif que le taux d'invalidité de 8 % résultant de la comparaison des revenus sans et avec invalidité était insuffisant pour ouvrir droit à une telle prestation.
B.
Par arrêt du 11 mars 2021, la Cour des assurances sociales du Tribunal cantonal vaudois a rejeté le recours formé par l'assuré contre la décision sur opposition du 19 février 2020.
C.
A._ interjette un recours en matière de droit public contre cet arrêt, en concluant à sa réforme en ce sens qu'il a droit à une rente LAA fondée sur un taux d'invalidité de 20 %, subsidiairement de 19 %, dès le 1er novembre 2019.
La CNA conclut au rejet du recours. La cour cantonale ainsi que l'Office fédéral de la santé publique (OFSP) ont renoncé à présenter une détermination.

Considérant en droit :
1.
Le recours est dirigé contre un arrêt final (<ref-law>) rendu en matière de droit public (<ref-law>) par une autorité cantonale de dernière instance (art. 86 al. 1 let. d LTF). Il a été déposé dans le délai (<ref-law>) prévu par la loi. Il est donc recevable.
2.
2.1. Le litige porte sur le taux d'invalidité présenté par le recourant, singulièrement sur les revenus sans et avec invalidité déterminants pour la comparaison des revenus prescrite à l'<ref-law> (RS 830.1).
2.2. La procédure portant sur l'octroi ou le refus de prestations en espèces de l'assurance-accidents, ici le droit à une rente, le Tribunal fédéral n'est pas lié par les faits établis par la juridiction précédente (<ref-law>).
3.
3.1.
3.1.1. Selon l'<ref-law>, les prestations d'assurance sont allouées en cas d'accident professionnel, d'accident non professionnel et de maladie professionnelle. Si l'assuré est invalide (<ref-law>) à 10 % au moins ensuite d'un accident, il a droit à une rente d'invalidité (<ref-law>). Pour évaluer le taux d'invalidité, le revenu que l'assuré aurait pu obtenir s'il n'était pas invalide est comparé avec celui qu'il pourrait obtenir en exerçant l'activité qui peut raisonnablement être exigée de lui après les traitements et les mesures de réadaptation, sur un marché du travail équilibré (<ref-law>; méthode ordinaire de la comparaison des revenus).
3.1.2. Pour déterminer le revenu sans invalidité, il faut établir ce que l'assuré aurait, au degré de la vraisemblance prépondérante, réellement pu obtenir au moment déterminant s'il n'était pas devenu invalide. Le revenu sans invalidité doit être évalué de la manière la plus concrète possible. Partant de la présomption que l'assuré aurait continué d'exercer son activité sans la survenance de son invalidité, ce revenu se déduit en principe du salaire réalisé en dernier lieu par l'assuré avant l'atteinte à la santé, en prenant en compte également l'évolution des salaires jusqu'au moment de la naissance du droit à la rente (<ref-ruling> consid. 5.1; <ref-ruling> consid. 4.1; <ref-ruling> consid. 4.3.1). Le salaire réalisé en dernier lieu par l'assuré comprend tous les revenus d'une activité lucrative (y compris les gains accessoires et la rémunération des heures supplémentaires effectuées de manière régulière) soumis aux cotisations à l'assurance-vieillesse et survivants (AVS; arrêt 8C_574/2019 du 28 février 2020 consid. 3 et la référence).
A cet effet, on se fondera en premier lieu sur les renseignements fournis par l'employeur (arrêt 8C_679/2020 du 1er juillet 2021; THOMAS FLÜCKIGER, Basler Kommentar UVG, 2019, n° 21 ad <ref-law>). Tant pour les personnes salariées que pour celles de condition indépendante, on peut également se référer aux revenus figurant dans l'extrait du compte individuel de l'AVS (arrêt 8C_443/2018 du 30 janvier 2019 consid. 2.1; FLÜCKIGER, loc. cit.; cf. arrêts 8C_661/2018 du 28 octobre 2019 consid. 3.2.2; 8C_9/2009 du 10 novembre 2009, in SVR 2010 IV n° 26 p. 79).
3.2.
3.2.1. En l'espèce, pour déterminer le revenu sans invalidité du recourant, la CNA s'est écartée des renseignements fournis à sa demande par l'ancien employeur. Ce dernier avait indiqué que le recourant aurait perçu en 2019 un salaire horaire de 30 fr. 60, plus 8,33 % au titre du treizième salaire, pour un horaire de travail hebdomadaire de 44,5 heures. La CNA a considéré que cet horaire dépassait largement l'horaire hebdomadaire de 42,2 heures prévu par la convention collective des paysagistes et entrepreneurs de jardins du canton de Vaud (ci-après: la CCT), qui avait force obligatoire. Partant, elle a fixé le revenu sans invalidité déterminant à 70'276 fr. (30 fr. 60 x 2120 heures x 108,33 %) au lieu de 83'624 fr. 05 comme le faisait valoir le recourant en se référant au décompte d'indemnités journalières. Toujours selon la CNA, le montant de 70'276 fr. n'était du reste guère éloigné de la moyenne des revenus qui ressortaient du compte individuel AVS du recourant pour les cinq années précédant l'accident, soit 68'372 fr. (2012: 69'525 fr.; 2013: 59'598 fr.; 2014: 70'701 fr.; 2015: 74'591 fr.; 2016: 67'443 fr.).
3.2.2. La cour cantonale a confirmé cette manière de procéder compte tenu du caractère obligatoire de la CCT, laquelle fixait la durée de travail à 2120 heures par année civile complète pour un poste à 100 %, ce qui correspondait à 42.2 heures hebdomadaires. Pour les juges cantonaux, l'horaire hebdomadaire de 44,5 heures indiqué par l'ancien employeur n'était corroboré par aucune autre pièce au dossier. Ainsi, les inscriptions figurant au compte individuel AVS du recourant montraient que celui-ci n'avait jamais travaillé 2120 heures par année compte tenu du salaire horaire qu'il percevait entre 2012 et 2015. Les fiches de salaires produites menaient au même constat.
3.2.3. Le recourant fait valoir que les constatations faites par la cour cantonale reposeraient sur une mauvaise lecture de la CCT ainsi que des pièces au dossier. En particulier, selon lui, l'alinéa 3.1 de l'art. 3 de la CCT indiquant une durée hebdomadaire moyenne de travail de 42,2 heures devrait être lu en corrélation avec l'alinéa 3.3 du même article, en ce sens que cette durée de travail hebdomadaire ne revêt qu'un caractère indicatif et que les entreprises sont libres de fixer une autre durée dans les limites prévues à l'alinéa 3.3 (45 heures au maximum). Tel serait justement le cas de son ancien employeur. En outre, les décomptes d'heures établis par la CNA sur la base de ses fiches de salaire omettraient de comptabiliser son droit aux vacances ainsi que les heures fériées, ce qui en fausserait le résultat. Dès lors, conformément à la jurisprudence, son revenu sans invalidité devrait être fixé en fonction des indications fournies par l'entreprise B._ SA pour 2019, soit 76'706 fr. 74 (30 fr. 60 x 44,5 heures x 52 semaines + 8,33 %).
3.3. La critique du recourant est justifiée. Les motifs retenus tant par l'intimée que par la cour cantonale pour s'écarter des renseignements de l'employeur concernant l'année 2019 ne sont pas fondés.
3.3.1. Tout d'abord, on peut observer que les 2120 heures annuelles prises comme référence pour calculer le revenu sans invalidité du recourant ne correspondent pas à un horaire de travail de 42,2 heures (voir l'alinéa 3.1 de l'art. 3 de la CCT modifié par l'Avenant n° 7 du 7 octobre 2016, selon lequel une durée hebdomadaire du travail de 42,2 heures résulte du calcul suivant: 2200 heures par an divisé par 52.14). Le chiffre de 2120 heures annuelles ressort en fait de l'alinéa 4.1 de l'art. 4 de la CCT modifié par l'Avenant précité. Sous le titre marginal "rémunération", cet alinéa prévoit que dans tous les cas, pour un taux d'activité à 100 %, l'employeur paie 2120 heures par année civile complète [...]. Comme les termes "dans tous les cas" l'indiquent, il s'agit d'une rémunération garantie et elle inclut les empêchements de travailler sans faute du travailleur (maladie, accident, vacances, etc.) (voir l'alinéa 4.3). Or le tableau récapitulatif établi par l'intimée recensant le total des heures effectuées par le recourant de 2010 à 2017 [pièce 233 du dossier CNA] comptabilise certes les heures travaillées et les heures fériées (contrairement à ce qui est mentionné dans le recours), mais il omet de prendre en compte, en sus, les jours de vacances payées qui, selon l'art. 13 de la CCT, s'élèvent à 25 jours ouvrables dès l'âge de 20 ans révolus, respectivement à 30 jours ouvrables dès l'âge de 50 ans. En ce sens, il est erroné de retenir sur la base de ce tableau récapitulatif que le recourant n'a jamais travaillé 2120 heures par année avant 2017.
3.3.2. A considérer les fiches salariales de l'année 2015 - qui apparaît la plus représentative du salaire réalisé en dernier lieu avant l'atteinte à la santé dès lors qu'en 2016, le recourant a perçu des indemnités journalières pour un précédent accident -, on constate que ce dernier a été payé pour un total de 2044 heures (y compris 56 heures intempéries, 24 heures maladie et 70,5 heures fériées), et qu'il a perçu, en sus, 7942 fr. 80 pour son droit aux vacances et 5737 fr. 85 à titre de treizième salaire. Cela représente un salaire annuel total de 74'591 fr. 85 (2044 x 29.80 [salaire horaire en 2015] + 7942.80 + 5737.85), soit le montant exact qui figure au compte individuel AVS du recourant pour cette année-là. Par ailleurs, un total annuel de 2044 heures avec 6 semaines de vacances correspond à un horaire de travail hebdomadaire de 44,43 heures (2044 : [52 - 6]).
3.3.3. Dans ces conditions, il y a lieu de se fonder sur le nombre d'heures hebdomadaires de travail fixé par l'employeur qui, en l'espèce, a communiqué à l'intimée un horaire de 44,5 heures par semaine pour 2019, ce d'autant que le revenu sans invalidité doit être évalué de la manière la plus concrète possible (cf. consid. 3.1.2 supra), y compris lorsque le total des heures annuelles de travail effectivement accomplies est supérieur à la durée annuelle de travail prévue dans la convention collective de travail (arrêt 8C_574/2019 du 28 février 2020 consid. 5.2). Il s'ensuit que le revenu sans invalidité du recourant doit être déterminé de la manière suivante: 30.60 [salaire horaire en 2019] x 44,5 [horaire de travail hebdomadaire] x 52 semaines + 8,33 % = 76'706 fr. 74, arrondi à 76'706 fr. 75.
4.
4.1. Pour ce qui est du revenu d'invalide, la cour cantonale s'est référée aux données statistiques provenant de l'Enquête suisse sur la structure des salaires (ESS) 2018 - celles-ci étant désormais disponibles -, en prenant pour base le salaire auquel peuvent prétendre des hommes dans des tâches simples (niveau de compétences 1) dans le secteur privé, soit 5417 fr. par mois pour 40 heures de travail par semaine (tableau TA1). Après adaptation à l'évolution des salaires et à la durée normale du travail dans les entreprises en 2019 (41,7 heures), il en résultait un montant annuel de 68'105 fr. 05 en 2019. En outre, la cour cantonale a confirmé le taux d'abattement de 5 % retenu par la CNA pour tenir compte du handicap du recourant, ce qui portait le revenu d'invalide à 64'699 fr. 80.
4.2. Le recourant conteste uniquement le taux d'abattement opéré sur le salaire statistique pour déterminer son revenu d'invalide. Citant à titre d'exemple divers arrêts de la Cour de céans (8C_823/2019 du 9 septembre 2020; 8C_661/2018 du 28 octobre 2019; 8C_46/2018 du 11 janvier 2019; 8C_401/2018 du 16 mai 2019; 8C_311/2015 du 22 janvier 2016), il fait valoir qu'un abattement de 5 % - soit la déduction la plus modeste - ne vaudrait que pour des personnes ayant assumé un poste à responsabilité ou présentant une certaine capacité d'adaptation dans l'optique d'un changement d'orientation professionnelle. Il estime qu'un taux d'abattement de 10 % se justifierait dans sa situation eu égard au fait qu'il présente un taux d'atteinte à l'intégrité de 15 %, qu'il a exercé le même emploi durant 30 ans, qu'il est sans formation et qu'il a une maîtrise limitée du français.
4.3. En ce qui concerne le taux d'abattement, on rappellera que la mesure dans laquelle les salaires ressortant des statistiques doivent être réduits dépend de l'ensemble des circonstances personnelles et professionnelles du cas particulier (limitations liées au handicap, âge, années de service, nationalité/catégorie d'autorisation de séjour et taux d'occupation). Une déduction globale maximale de 25 % sur le salaire statistique permet de tenir compte des différents éléments qui peuvent influencer le revenu d'une activité lucrative (<ref-ruling> consid. 5b/aa-cc). Le point de savoir s'il y a lieu de procéder à un abattement sur le salaire statistique en raison de circonstances particulières (liées au handicap de la personne ou à d'autres facteurs) est une question de droit qui peut être examinée librement par le Tribunal fédéral; en revanche, l'étendue de l'abattement du salaire statistique dans un cas concret constitue une question relevant du pouvoir d'appréciation, qui est soumise à l'examen du juge de dernière instance uniquement si la juridiction cantonale a exercé son pouvoir d'appréciation de manière contraire au droit, soit si elle a commis un excès positif ("Ermessensüberschreitung") ou négatif ("Ermessensunterschreitung") de son pouvoir d'appréciation ou en a abusé ("Ermessensmissbrauch"), notamment en retenant des critères inappropriés, en ne tenant pas compte de circonstances pertinentes, en ne procédant pas à un examen complet des circonstances pertinentes ou en n'usant pas de critères objectifs (<ref-ruling> consid. 5.1; <ref-ruling> consid. 3.3; <ref-ruling> consid. 1.2).
4.4. On ne peut pas tirer une règle générale de quelques précédents en matière d'abattement du salaire statistique, ne serait-ce que parce que cette question doit être tranchée en fonction du cas particulier. En tout état de cause, le recourant ne démontre pas en quoi l'existence d'une atteinte à l'intégrité de 15 % devrait conduire à un abattement supérieur à 5 %. Une réduction au titre du handicap dépend de la nature des limitations fonctionnelles présentées et n'entre en considération que si, dans un marché du travail équilibré, il n'y a plus un éventail suffisamment large d'activités accessibles à l'assuré (cf. en dernier lieu arrêt 8C_118/2021 du 21 décembre 2021 consid. 6.3.1). En l'espèce, il ressort des appréciations médicales au dossier que le recourant est en mesure d'exercer une activité à plein temps sans diminution de rendement si l'activité respecte pleinement ses limitations fonctionnelles; celles-ci concernent toute activité en hauteur répétitive ou maintenue ou encore en porte-à-faux avec le membre supérieur droit ainsi que le port de charges lourdes répétitives de plus de 10-15 kg. Si de telles limitations excluent les travaux lourds, on ne voit pas qu'elles restreindraient de manière significative les activités légères, en tout cas pas dans une mesure qui justifierait un abattement supérieur à 5 %. Quant à l'absence d'expérience et de formation, elle ne joue pas de rôle lorsque le revenu d'invalide a été déterminé en référence au salaire statistique auquel peuvent prétendre les hommes effectuant des activités simples et répétitives (arrêt 9C_847/2018 du 2 avril 2019 consid. 6.2.3 et l'arrêt cité). Pour le surplus, le recourant n'établit pas, ni même n'allègue, comme il lui aurait appartenu de le faire au regard du pouvoir d'examen du Tribunal fédéral (cf. consid. 4.3 supra), que la cour cantonale aurait omis de considérer les autres facteurs cités par la jurisprudence. Par conséquent, il n'y a pas lieu de revenir sur le taux de 5 % retenu.
5.
La comparaison des deux revenus aboutit à un taux d'invalidité (arrondi) de 16 % [ (76'706 fr. 75 - 64'699 fr. 80) : 76'706 fr. 75 x 100 = 15,65]. Il s'ensuit que le recourant a droit à une rente d'invalidité LAA d'un montant correspondant (<ref-law>) dès le 1er novembre 2019 (<ref-law>). Le recours doit être partiellement admis en ce sens.
6.
L'intimée, qui succombe, supportera les frais judiciaires (<ref-law>) et versera une indemnité de dépens au recourant (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est partiellement admis et l'arrêt de la Cour des assurances sociales du Tribunal cantonal vaudois du 11 mars 2021 est modifié en ce sens que le recourant a droit à une rente d'invalidité LAA de 16 % dès le 1er novembre 2019.
2.
Les frais judiciaires, arrêtés à 800 fr., sont mis à la charge de l'intimée.
3.
L'intimée versera au recourant la somme de 2800 fr. à titre de dépens pour l'instance fédérale.
4.
La cause est renvoyée au tribunal cantonal pour nouvelle décision sur les dépens de la procédure cantonale.
5.
Le présent arrêt est communiqué aux parties, à la Cour des assurances sociales du Tribunal cantonal vaudois et à l'Office fédéral de la santé publique.
Lucerne, le 3 février 2022
Au nom de la Ire Cour de droit social
du Tribunal fédéral suisse
Le Président : Wirthlin
La Greffière : von Zwehl