Ekman a passé ses premières années en jouant dans sa Suède natale. En 1993-94, après avoir inscrit 4 buts et réalisé 5 passes décisives pour le club de Stockholm Hammarby IF dans la ligue junior suédoise, Ekman rejoint l'Allsvenskan (deuxième division suédoise) pour le même club et en 18 matchs marque 9 points.
Après deux nouvelles saisons dans le club de Hammarby, il rejoint la Finlande et la SM-liiga en jouant pour l'équipe de Kiekko-Espoo pendant trois saisons.
À la suite de l'élimination de son équipe pour les séries éliminatoires en 1997-98, il signe un contrat avec les Flames et rejoint le club école de la franchise, les Flames de Saint-Jean de la Ligue américaine de hockey (LAH). Cependant, il ne fait qu'une brève apparition d'un match dans les séries et retourne jouer une saison avec Espoo.
Il fait ses débuts dans la LNH pour la saison 1999-2000 mais après 28 matchs et 4 points (2+2), il se joint à la Ligue internationale de hockey afin de gagner de l'expérience. L'année suivante, il retourne jouer dans la LNH et est échangé à la fin de l'été 2001 aux Rangers de New York mais ne jouera jamais pour les Blueshirts.
À la place, il retourne jouer en Suède pour le Djurgårdens IF de l'Elitserien (première division suédoise) puis rejoint la LAH et le Wolf Pack de Hartford, mais ne perce toujours pas dans la LNH.
Le , il rejoint, en retour de Chad Wiseman, les Sharks de San José qui misent sur le Suédois pour se relancer. Il ne déçoit par les Sharks en inscrivant 22 buts et 33 passes sur la saison.
Pendant le lock-out 2004-2005, il joue 44 matchs pour Djurgården et devient le meilleur marqueur de l'équipe (18 buts et 27 passes), mais le club de Stockholm est éliminé en demi-finales du championnat.