2 lipca 2004 roku Mjällby podpisał kontrakt z beniaminkiem Primera División – Levante UD, a w 2005 roku wrócił do AIK Fotboll. Przez ostatnie lata przygody z futbolem szwedzki piłkarz zmagał się z wieloma problemami zdrowotnymi, przez które był zmuszony zakończyć piłkarską karierę.
Kariera reprezentacyjna W reprezentacji Szwecji Mjällby zadebiutował 12 marca 1997 roku w spotkaniu przeciwko Izraelowi. W 2000 roku znalazł się w kadrze Szwecji na mistrzostwa Europy. Na Euro „Blågult” zajęli ostatnie miejsce w swojej grupie i odpadli z turnieju. Johan wystąpił we wszystkich trzech meczach, a w przegranym 2:1 pojedynku z Belgią zdobył jedyną bramkę dla swojej drużyny. W 2002 roku Mjällby otrzymał powołanie od Larsa Lagerbäcka i Tomasa Söderberga na mistrzostwa świata. Na boiskach Korei Południowej i Japonii Szwedzi w 1/8 finału zostali wyeliminowani przez Senegal. Johan na mundialu tym pełnił rolę kapitana swojego zespołu i wystąpił w każdym ze spotkań w pełnym wymiarze czasowym. Ostatnią wielką imprezą w karierze Szweda były Mistrzostwa Europy 2004. Podopieczni Lagerbäcka i Söderberga zajęli wówczas pierwsze miejsce w swojej grupie, ale w ćwierćfinale przegrali po rzutach karnych z Holendrami. Po turnieju tym Mjällby zakończył reprezentacyjną karierę.