Erste internationale Erfahrungen sammelte João Coelho im Jahr 2019, als er bei den erstmals ausgetragenen U23-Mittelmeer-Hallenmeisterschaften in Miramas in 48,15 s die Silbermedaille hinter dem Algerier Slimane Moula gewann. Anschließend erreichte er bei den Europaspielen in Minsk in 3:19,63 min Rang vier mit der portugiesischen gemischten 4-mal-400-Meter-Staffel. Im Juli erreichte er bei den U23-Europameisterschaften im schwedischen Gävle das Halbfinale über 400 Meter und schied dort mit 47,49 s aus. Bei den World Athletics Relays 2021 im polnischen Chorzów belegte er in 3:51,69 min gemeinsam mit Dorothé Évora den fünften Platz in der 2-mal-2-mal-400-Meter-Staffel. Anschließend schied er bei den U23-Europameisterschaften in Tallinn mit 46,29 s im Halbfinale aus. Im Jahr darauf wurde er bei den Ibero-Amerikanischen Meisterschaften in La Nucia in 45,88 s Vierter im Einzelbewerb und gewann mit der Staffel in 3:07,23 min die Bronzemedaille hinter den Teams aus der Dominikanischen Republik und Spanien. Anschließend siegte er bei den Mittelmeerspielen in Oran mit neuer Bestleistung von 45,41 s. Im August schied er bei den Europameisterschaften in München mit 45,64 s im Semifinale über 400 Meter aus und verpasste mit der Staffel mit 3:03,59 min den Finaleinzug. 2023 schied er bei den Halleneuropameisterschaften in Istanbul mit 46,69 s im Semifinale aus. Ende Mai siegte er in 45,22 s bei der Papaflessia, ehe er bei der 1. Liga der Team-Europameisterschaft im Rahmen der Europaspiele in Chorzów in 45,05 s Zweiter wurde und sich damit ligenübergreifend die Silbermedaille hinter dem Norweger Håvard Bentdal Ingvaldsen gewann. Zudem wurde er in der Mixed-Staffel in 3:14,06 min Fünfter. Im August siegte er mit neuem Landesrekord von 44,79 s bei den World University Games in Chengdu, ehe er bei den Weltmeisterschaften in Budapest mit 45,38 s in der ersten Runde ausschied. Im Jahr darauf belegte er bei den Hallenweltmeisterschaften in Glasgow mit neuem Landesrekord von 45,86 s den vierten Platz über 400 Meter und wurde mit der Staffel im Finale disqualifiziert. Im Mai wurde er bei den World Athletics Relays in Nassau in 3:17,03 min Fünfter im C-Lauf in der 2. Qualifikationsrunde für die Olympischen Spiele und verpasste damit eine Direktqualifikation. Anschließend schied er bei den Europameisterschaften in Rom mit 45,36 s im Halbfinale über 400 Meter aus und belegte mit der Männerstaffel in 3:01,89 min den sechsten Platz. Im August schied er bei den Olympischen Sommerspielen in Paris mit 45,64 s in der Hoffnungsrunde über 400 Meter aus.
2022 wurde Coelho portugiesischer Meister im 400-Meter-Lauf im Freien sowie 2019 und von 2022 bis 2024 in der Halle. Zudem wurde er 2022 Hallenmeister im 200-Meter-Lauf.