Returning Officer Md Hasanuzzaman announced the unofficial results after the vote count ended in the evening.
He said the voter turnout in the election was only 23 percent.
Moslem Uddin bagged 87,246 votes while his nearest rival Abu Sufian of BNP polled 17,935.
Earlier, voting in the by-polls was held from 9am to 5pm amid allegations of various irregularities, including polling centre capture by Awami League activists.
The BNP contestant also demanded suspension of the by-polls.
At a conference, Sufian alleged that activists of Bangladesh Chhatra League (BCL) drove voters out of polling stations after taking their fingerprints and captured 120 polling centres out of 170 during the polls.
He further alleged that the BCL activists beat up and stabbed some BNP followers.
“Over 400-500 BCL and Jubo League men were seen standing in queues to demonstrate that the election is being held smoothly,” alleged Dr Shahadat Hossain, president of Chattogram city BNP.
The constituency fell vacant following the death of Moin Uddin Khan Badal, executive president of a faction of Jatiya Samajtantrik Dal (Jasod), who died at a hospital in India on November 7 last at the age of 67.