Korean Defence Ministry said the man, who worked for the fisheries department, disappeared from a patrol boat near the border and was later found in the North's waters.
North Korean soldiers shot him, then poured oil over his body and set it alight, the ministry said. It believed it was an anti-coronavirus measure.
Pyongyang has not commented.
The border between the Koreas is tightly policed, and the North is thought to have a "shoot-to-kill" policy in place to prevent Covid-19 from entering the country.
The incident would be the second time North Korean troops have shot and killed a South Korean civilian. In July 2008, a tourist was shot by a soldier at Mount Kumgang.