Almgren låg femma inför uploppet men han lyckades spurta förbi två konkurrenter och ta bronset. Tiden är två tiondelar från Rizak Dirshes elvaåriga svenska seniorrekord.
– Han är jätteglad. Han har verkligen kämpat för det här. De pratade om att det skulle gå fort, och det gjorde det, säger lagledaren Johanna Axelsson till SVT Sport.
Finalens andre svensk, Kalle Berglund, blev sjua. Det blev dubbelt kenyanskt på pallen.
Alfred Kipketer vann före Joshua Masikonde på 1.43,95.
Almgrens brons under sista dagen innebär att Sverige åker hem med tre JVM-medaljer efter att Irene Ekelund och Sofi Flink tagit silver i 200 meter respektive spjut. Så många medaljer har Sverige inte tagit i ett JVM sedan 2000 i Santiago. Där blev det fyra medaljer med Carolina Klüft och Susanna Kallur som guldhjältar.