Faits:
A. X._, ressortissant marocain né en 1954, a épousé une ressortissante suisse en 1979 et obtenu de ce fait une autorisation de séjour. Divorcé en 1984, il a épousé en 1988 en secondes noces Y._, ressortissante française. Les époux ont eu deux enfants, A._, né en 1988, et B._, né en 1989. Dès le 19 juillet 1993, X._ a été mis au bénéfice d'une autorisation d'établissement. Le couple XY._ a divorcé en 2003. Les enfants ont été placés sous la garde de leur mère. A sa majorité, B._ a été replacé sous l'autorité parentale de Y._ en raison d'une déficience mentale nécessitant un accompagnement constant par des adultes pour les tâches élémentaires de la vie quotidienne.
Pendant son séjour en Suisse, X._ a été condamné à des peines de 10 mois d'emprisonnement (1982), 20 jours d'arrêts (1987), 6 mois d'emprisonnement (1996) et deux ans et demi d'emprisonnement (1997), toujours pour infractions à la LStup (RS 812.121). Entre mars 1992 et avril 2006, il a bénéficié de l'aide sociale pour un montant supérieur à CHF 240'000.-.
En avril 2006, X._ a quitté la Suisse. Le 3 juillet 2006, il a été arrêté en Espagne en possession de stupéfiants et incarcéré pendant 3 ans et un mois. Son autorisation d'établissement en Suisse a pris fin pendant cette période.
B. Le 7 janvier 2009, X._ a déposé à Barcelone une demande de visa Schengen pour pouvoir séjourner en Suisse auprès de son ex-épouse et de leurs deux enfants. Par décision du 24 février 2009, le Service des migrations du canton de Neuchâtel (ci-après le Service cantonal) a refusé l'octroi de ce visa et de l'autorisation de séjour. Saisi d'un recours contre cette décision, le Département de l'économie du canton de Neuchâtel (ci-après le Département de l'économie) l'a rejeté le 8 juin 2010. Le 10 août 2010, X._ a interjeté un recours devant le Tribunal administratif du canton de Neuchâtel contre la décision du Département de l'économie.
Le 8 avril 2011, le Service cantonal a prononcé le renvoi de X._, qui avait séjourné à la Chaux-de-Fonds sans être en possession d'un visa ni d'une autorisation de séjour. Le même jour, l'Office fédéral des migrations a prononcé contre le prénommé une interdiction d'entrée en Suisse valable jusqu'au 7 avril 2014.
Par arrêt du 3 novembre 2011, la Cour de droit public du Tribunal cantonal de la République et canton de Neuchâtel (ci-après le Tribunal cantonal), qui a succédé au Tribunal administratif, a rejeté le recours de X._ à l'encontre de la décision du Département de l'économie du 8 juin 2010.
C. Par acte du 7 décembre 2011, X._ forme un recours en matière de droit public au Tribunal fédéral contre l'arrêt du 3 novembre 2011. Il conclut à l'annulation de cet arrêt et, principalement, à ce qu'un visa Schengen et une autorisation de séjour lui soient accordés. Subsidiairement, il demande le renvoi de l'affaire à l'instance inférieure pour nouvelle décision dans le sens des considérants, le tout sous suite de frais et dépens.
Le Service cantonal et le Tribunal cantonal concluent au rejet du recours en se référant aux motifs de l'arrêt attaqué. Le Département de l'économie et l'Office fédéral des migrations ont déposé des déterminations tardives.

Considérant en droit:
1. 1.1 Le Tribunal fédéral examine d'office sa compétence et la recevabilité des recours qui lui sont soumis (cf. <ref-law>; <ref-ruling> consid. 1 p. 472).
1.2 D'après l'art. 83 let. c ch. 2 LTF, le recours en matière de droit public est irrecevable contre les décisions en matière de droit des étrangers qui concernent une autorisation à laquelle ni le droit fédéral ni le droit international ne donnent droit. Il n'est pas contesté en l'espèce que le recourant ne peut se prévaloir d'aucun droit à obtenir une autorisation de séjour fondé sur le droit fédéral.
1.3 Le recourant invoque, sous l'angle de l'art. 8 CEDH, son droit à entretenir une relation avec son fils majeur mais handicapé qui est au bénéfice d'un droit de présence assuré en Suisse.
Selon la jurisprudence, un étranger peut, selon les circonstances, se prévaloir du droit au respect de sa vie privée et familiale au sens de l'art. 8 par. 1 CEDH pour s'opposer à une éventuelle séparation de sa famille. Encore faut-il, pour pouvoir invoquer cette disposition, que la relation entre l'étranger et une personne de sa famille ayant le droit de résider durablement en Suisse soit étroite et effective (cf. <ref-ruling> consid. 1.3.1 p. 145). L'art. 8 CEDH s'applique lorsqu'un étranger fait valoir une relation intacte avec ses enfants - mineurs - bénéficiant du droit de résider en Suisse, même si ces derniers ne sont pas placés sous son autorité parentale ou sous sa garde du point de vue du droit de la famille (cf. arrêt 2C_942/2010 du 27 avril 2011 consid. 1.3).
Le Tribunal fédéral admet aussi qu'un étranger puisse, exceptionnellement et à des conditions restrictives, déduire un droit à une autorisation de séjour de l'art. 8 par. 1 CEDH, s'il existe un rapport de dépendance particulier entre lui et un proche parent au bénéfice d'un droit de présence assuré en Suisse, par exemple en raison d'une maladie ou d'un handicap. En effet, si l'enfant dans un rapport de dépendance particulier (malade ou handicapé) est mineur, alors on admet que le parent étranger peut faire valoir un droit lui ouvrant la voie du recours en matière de droit public en application de l'art. 8 CEDH. Sur le plan procédural, il n'y a aucun motif de traiter différemment le parent d'un enfant majeur qui se trouve dans une même situation de dépendance en raison d'une maladie ou d'un handicap. Dans un tel cas, le droit au maintien des relations familiales ne découle en effet pas de l'âge, mais du rapport de dépendance entre parents et enfants (arrêt 2C_942/2010 du 27 avril 2011 consid. 1.3).
En l'espèce, le Tribunal cantonal n'a pas tranché la question de la qualité de la relation du recourant avec son fils B._. Il n'est ainsi pas évident que le recourant puisse se prévaloir d'un droit issu de l'art. 8 par. 1 CEDH lui ouvrant la voie du recours en matière de droit public. La question peut cependant demeurer indécise, le recours devant de toute manière être rejeté, comme il le sera démontré ci-après (cf. infra consid. 3.4).
2. Le Tribunal fédéral statue sur la base des faits établis par l'autorité précédente (<ref-law>), à moins que ces faits n'aient été établis de façon manifestement inexacte ou en violation du droit (<ref-law>).
Le recourant fait grief à l'instance cantonale d'avoir constaté les faits pertinents de manière inexacte et incomplète au sens de l'<ref-law> parce qu'elle n'a pas tenu compte de l'état de santé déficient de son ex-épouse, détentrice de l'autorité parentale sur leur fils handicapé. Or, s'il est exact que, dans son acte de recours cantonal du 10 août 2010, le recourant avait fait état de ce fait, le bordereau de pièces produit à l'appui du recours ne contient pas le certificat médical annoncé à l'appui de cet allégué. Le Tribunal cantonal n'a donc pas fait preuve d'arbitraire en relevant que le recourant alléguait, "sans justificatif aucun", que son ex-épouse serait atteinte dans sa santé. La Cour de céans conduira donc son raisonnement juridique sur la base des seuls faits établis par l'autorité précédente.
3. 3.1 Le présent litige porte sur le refus des autorités cantonales compétentes d'accorder une autorisation de séjour au recourant. Ce dernier ne pouvant, le cas échéant, se prévaloir d'un droit à une telle autorisation qu'en vertu de l'art. 8 CEDH, la cause ne doit être examinée que sous cet angle.
3.2 Ainsi qu'on l'a vu au stade de la recevabilité (cf. supra consid. 1.3), le Tribunal cantonal n'a pas tranché la question de la qualité de la relation du recourant avec son fils B._, majeur mais handicapé. Il n'est par conséquent pas possible de déterminer dans quelle mesure le recourant peut se prévaloir du droit au respect de sa vie privée et familiale au sens de l'art. 8 par. 1 CEDH pour obtenir une autorisation de séjour en Suisse. Cette question peut cependant rester ouverte dès lors qu'une telle autorisation devrait de toute manière lui être refusée pour les motifs qui suivent.
3.3 Le droit au respect de la vie privée et familiale garanti par l'art. 8 par. 1 CEDH n'est pas absolu. Une ingérence dans l'exercice de ce droit est possible selon l'art. 8 par. 2 CEDH, pour autant qu'elle soit prévue par la loi et qu'elle constitue une mesure qui, dans une société démocratique, est nécessaire à la sécurité nationale, à la sûreté publique, au bien-être économique du pays, à la défense de l'ordre et à la prévention des infractions pénales, à la protection de la santé ou de la morale, ou à la protection des droits et libertés d'autrui. La question de savoir si, dans un cas d'espèce, les autorités de police des étrangers sont tenues d'accorder une autorisation de séjour fondée sur l'art. 8 CEDH doit être résolue sur la base d'une pesée de tous les intérêts privés et publics en présence (cf. <ref-ruling> consid. 2.1 p. 147).
Dans la pesée des intérêts, il faut en premier lieu tenir compte, en cas de condamnation de l'étranger pour crime ou délit, de la gravité des actes commis ainsi que de la situation personnelle et familiale de l'intéressé. La peine infligée par le juge pénal est le premier critère servant à évaluer la gravité de la faute et à peser les intérêts (cf. <ref-ruling> consid. 4.2 p. 23). Le risque de récidive est également un facteur important qui doit s'apprécier d'autant plus rigoureusement que les faits reprochés sont graves (cf. <ref-ruling> consid. 4.3 p. 23 s.). En ce qui concerne plus particulièrement le trafic de stupéfiants, il est de jurisprudence constante que la protection de la collectivité publique face au développement d'un tel commerce constitue un intérêt public prépondérant justifiant l'éloignement de Suisse d'un étranger mêlé à ce genre d'activités (cf. arrêt 2C_547/2010 du 10 décembre 2010 consid. 4 et les arrêts cités). Au demeurant, le fait que le parent étranger dépende de façon continue et dans une large mesure de l'aide sociale et que cette situation ne semble pas devoir évoluer favorablement, peut également constituer un motif conduisant à lui refuser une autorisation de séjour (cf. <ref-ruling> consid. 5.2.5 p. 256; arrêt 2C_173/2011 du 24 juin 2011 consid. 4.2).
3.4 En l'espèce, le recourant a certes vécu en Suisse de 1979 à 2006 mais il n'y est pas intégré socialement et professionnellement. En effet, de 1992 à 2006, il a été durablement à la charge de l'aide sociale auprès de laquelle il a une dette supérieure à CHF 240'000.-. En outre, il est venu en Suisse à l'âge adulte seulement. Enfin, le comportement du recourant est loin d'avoir été toujours irréprochable. En effet, il a été condamné à cinq reprises en 25 ans par la justice pénale, dont deux fois à des peines supérieures à une année, l'importance des peines augmentant avec le temps. Toutes les condamnations ont un lien avec des infractions à la loi sur les stupéfiants. La dernière condamnation date de juillet 2006. Le recourant allègue certes que depuis sa sortie de prison en 2009, il a eu un comportement irréprochable sur le plan pénal. Cela ne saurait cependant contrebalancer ses condamnations antérieures ni le risque de récidive qui doit en être déduit.
En ce qui concerne le lien avec son fils handicapé, le Tribunal cantonal a retenu que la nécessité de la présence du recourant auprès de son fils n'avait pas été démontrée. Celui-ci est en effet pris en charge à temps complet dans un atelier pour adultes.
Au vu de ces éléments, l'instance cantonale a considéré que l'intérêt public à maintenir l'éloignement du recourant l'emportait largement sur son intérêt privé à séjourner en Suisse. En lui refusant l'autorisation de séjour sollicitée, elle a par conséquent correctement appliqué le droit fédéral et international. Le recours est donc mal fondé et doit être rejeté.
4. Succombant, le recourant supporte les frais judiciaires (cf. <ref-law>) et n'a pas droit à des dépens (cf. <ref-law>).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours en matière de droit public est rejeté.
2. Les frais judiciaires, fixés à CHF 2000.-, sont mis à la charge du recourant.
3. Le présent arrêt est communiqué au mandataire du recourant, au Service des migrations du canton de Neuchâtel, au Département de l'économie du canton de Neuchâtel, au Tribunal cantonal de la République et canton de Neuchâtel et à l'Office fédéral des migrations.
Lausanne, le 12 juin 2012
Au nom de la IIe Cour de droit public
du Tribunal fédéral suisse
Le Président: Zünd
La Greffière: Beti