Faits : A. A._, ressortissant britannique né en 1982, est père d'un garçon né en 2012 d'une relation avec une ressortissante suisse. Cet enfant a la nationalité suisse. A._, qui bénéficie de l'autorité parentale conjointe sur son fils, est entré en Suisse le 1 er septembre 2012 et, y exerçant alors une activité lucrative, a obtenu une autorisation de séjour UE/AELE. Dès le 9 juillet 2013, l'intéressé s'est trouvé en incapacité totale de travailler. Du 8 au 16 octobre 2013, il a été hospitalisé en raison d'une cellulite disséquante du cuir chevelu et d'une thalassémie alpha de stade 2. Depuis lors, il est régulièrement suivi pour cette atteinte. Il a obtenu une rente entière de l'assurance-invalidité (AI) pour la période allant du 1 er juillet 2014 au 31 octobre 2016. Son contrat de travail a été résilié par courrier du 28 octobre 2013, avec effet au 30 novembre 2013. A._ émarge à l'aide sociale. B. Par décision du 31 octobre 2016, le Service de la population du canton de Vaud (ci-après: le Service de la population) a révoqué l'autorisation de séjour UE/AELE de A._, mais s'est déclaré favorable à la poursuite de son séjour en Suisse en raison des motifs importants qui l'exigeaient, c'est-à-dire sa situation médicale et la présence de son fils dans ce pays. Il a de ce fait transmis le dossier au Secrétariat d'Etat aux migrations (ci-après: le Secrétariat d'Etat) pour qu'il donne son approbation à l'octroi de cette autorisation de séjour. Par décision du 30 mars 2017, le Secrétariat d'Etat a refusé d'approuver l'octroi de l'autorisation de séjour proposée par le Service de la population. Sur recours de A._ du 3 mai 2017, le Tribunal administratif fédéral, par arrêt du 12 septembre 2018, a confirmé la décision précitée. C. Agissant par la voie du recours en matière de droit public, A._ demande au Tribunal fédéral, sous suite de frais et dépens, outre l'assistance judiciaire et l'effet suspensif, d'annuler la décision du Secrétariat d'Etat du 30 mars 2017 et de lui accorder une autorisation de séjour; subsidiairement de renvoyer la cause au Secrétariat d'Etat pour qu'il procède à une instruction complémentaire. Il se plaint d'établissement inexact de faits et de violation du droit fédéral et international. Par ordonnance du 8 octobre 2018, le Président de la IIe Cour de droit public du Tribunal fédéral a admis la requête d'effet suspensif. Le Tribunal administratif fédéral renonce à se déterminer. Le Secrétariat d'Etat conclut au rejet du recours.