Mladen Grujicic, who acknowledges the killings took place, won 54.4% of the vote, triggering alarm and calls for a recount among the Muslim population.
Srebrenica was a Muslim-majority town before the war, but is now 55% Serb and 45% Bosniak (Muslim).
The July 1995 slaughter has been deemed genocide by two international courts.
Speaking to AFP before the vote, Mr Grujicic said "the crime against the Muslims took place" but like most Serbs refused to recognise it as genocide, saying: "I leave (it to) competent institutions to qualify it."
Outgoing Muslim mayor Camil Durakovic refused to concede defeat, crying foul and pledging to lodge a complaint.
But Bosnian Serb leader Milorad Dodik said their candidate won, adding that chemistry teacher Mr Grujicic would lead a  politics of "reality in Srebrenica" and would respect everyone, Beta news agency reported.
Hatidza Mehmedovic, who lost her husband and two sons and heads a survivors' organisation, said Mr Grujicic "could not run" the town "because his idols are war criminals such as Radovan Karadzic", the Serbs' political leader during Bosnia's brutal 1992-1995 civil war who is serving a 40-year jail term.
"I do not fear for myself. They killed me a long time ago with my sons," she added.
"But I do fear for the young ones who have children and who are trying to rebuild something in Srebrenica, first of all trust."
A man accused of not recognising the murders of 8,000 Muslim men and boys in Srebrenica as genocide has been elected the town's first Serb mayor since 1999.