Faits: A. X._ exploite un domaine agricole à Y._. Le 4 mai 2004, X._ a déposé une demande de paiements directs pour l'année 2004. En remplissant le formulaire B (relevé des animaux), il a indiqué qu'il détenait 36 génisses de plus de deux ans et que c'était aussi le cas le 1er janvier 2004. Le 10 mai 2004, X._ a présenté une seconde demande de contributions fondée sur les dispositions prises par le Conseil fédéral pour tenir compte de la sécheresse survenue en 2003, réglementation permettant d'obtenir des paiements directs calculés d'après le nombre d'unités de gros bétail consommant des fourrages grossiers (UGBFG) pour lequel des contributions avaient été versées en 2003. En remplissant la formule appropriée, il a alors indiqué que, par rapport au 1er janvier 2003 et au jour de référence de l'année 2003, son cheptel avait diminué de 34 génisses de plus de deux ans et de 10 génisses de un à deux ans. Le Service de l'agriculture du canton de Vaud (ci-après: le Service cantonal) a statué sur ces demandes le 23 février 2005, après avoir comparé les indications fournies par X._ avec les renseignements figurant dans la Banque de données sur le trafic des animaux. Il a ainsi établi que l'intéressé détenait, le 1er janvier 2004, 17 génisses de plus de deux ans ainsi que 19 génisses de un à deux ans et, le 4 mai 2004, 32 génisses de plus de deux ans et 4 génisses de un à deux ans. Il y avait donc un écart supérieur à 20 % entre le bétail annoncé pour les paiements directs et la réalité. Comme X._ avait déjà procédé à une fausse annonce en 2003, ce qui avait entraîné une réduction de ses paiements directs 2003, le Service cantonal a refusé de lui allouer des paiements directs 2004 pour le bétail bovin et de lui verser une quelconque contribution pour la sécheresse. B. X._ a alors porté sa cause en vain devant le Département de l'économie du canton de Vaud (ci-après: le Département cantonal), puis devant le Tribunal administratif, actuellement la Cour de droit administratif et public du Tribunal cantonal vaudois ainsi que, finalement, devant le Tribunal administratif fédéral. Dans son arrêt du 2 novembre 2007, ce dernier a considéré que l'écart entre la déclaration de X._ et la réalité était de 21,3 %, de sorte qu'il était justifié de lui refuser tous les paiements directs concernés d'un montant total de 24'390,45 fr.; cette sanction respectait le principe de la proportionnalité. Quant à la contribution extraordinaire en raison de la sécheresse de 2003, elle était étroitement liée aux paiements directs 2004 et devait être refusée à l'intéressé dès lors que lesdits paiements avaient occasionné une sanction supérieure à 3'000 fr. Enfin, le Tribunal administratif fédéral a écarté le moyen que X._ tirait d'une prétendue violation du principe de la bonne foi. C. Agissant par la voie du recours en matière de droit public, X._ demande au Tribunal fédéral, sous suite de frais et dépens, d'annuler l'arrêt du Tribunal administratif fédéral du 2 novembre 2007 et de renvoyer la cause au Service cantonal pour décision d'octroi de contributions selon l'ordonnance du 5 novembre 2003 instituant des mesures dans l'agriculture par suite de la sécheresse en 2003 (ordonnance sur la sécheresse; RS 914.12), calculées sur la base des UGBFG retenues pour l'année 2003. Le recourant se plaint de violation du droit public fédéral. Il reproche en particulier à l'autorité intimée d'avoir interprété arbitrairement l'ordonnance sur la sécheresse, notamment son art. 2 al. 3, ainsi que l'art. 70 de l'ordonnance du 7 décembre 1998 sur les paiements directs versés dans l'agriculture (ordonnance sur les paiements directs; OPD; RS 910.13). Le Tribunal administratif fédéral a renoncé à déposer des déterminations. Le Tribunal administratif vaudois n'a pas déposé d'observations dans le délai imparti. Le Département cantonal conclut au rejet du recours, sous suite de frais. Le Département fédéral de l'économie se réfère à l'arrêt attaqué.