Officials said Hector Figueroa had confessed to killing Daniel Dion in a fight, then stuffing his body in the car and setting the car on fire.
Mr Figueroa was a business associate of Mr Dion, Canadian media reported.
Mr Dion, 51, disappeared last month on a business trip to Acapulco. His charred corpse was found in a town about an hour away.
He headed EcoPurse Mexico, a company that employed Mexican prisoners and labourers to sew eco-friendly purses and said it aimed to improve the lot of poor Mexicans.
Mr Figueroa, 46, has not yet been charged over the death. The Canadian Broadcasting Corporation reported that he was a technician who had been in prison on a homicide charge when he met Mr Dion, citing a Mexican police official.
A police official told the AFP news agency the two had been drinking and arguing when the suspect beat Mr Dion to death.
Mr Dion's body was found when his family obtained GPS tracking information for a rental car he had been driving and located the burnt-out wreck with the remains inside in Chilpancingo, about 140km (90 miles) from Acapulco.