Qual dos setElementData deu erro? o dentro do setTimer? se for tira o element dos parametros da função e cria uma variavel antes do setTimer, ped = element e usa ela como referencia
 
	eu tentaria assim:
 
function ZombieExit2(element)
	if isElement(element) and getElementType(element) == "ped" then
		local spawn_ztype = tonumber(getElementData(element,"spawn_ztype"))
		if spawn_ztype == 9 or spawn_ztype == 11 or spawn_ztype == 2 or spawn_ztype == 3 or spawn_ztype == 4 or spawn_ztype == 5 or spawn_ztype == 6 or spawn_ztype == 7 or spawn_ztype == 8 or spawn_ztype == 10 or spawn_ztype == 20 then
			setElementData(element,"zombieExit",element)
          ped = element
			setTimer(function()
				setElementData(ped,"zombieTimer",getElementData(ped))
			end,40000,1)
		end
	end
end
addEventHandler ( "onColShapeLeave", ColCuboid2, ZombieExit2 )
	espero que te ajude de alguma forma, vlw