The only free and comprehensive online etymological dictionary of the Spanish language
hacer (Verb) "to make," "to do"
11th cent. Old Spanish fere. From Latin facere 'id.'
From Proto-Italic *fak- 'id.' From Proto-Indo-European *dhh1-k- 'id.' From the root *dheh1- "to put" (see dar).
Variants: Navarre fer, La Rioja fer, Aragon fer
Following Meyer-Lübke (1890), Old Spanish fere and its dialect variants in fer point to a stress variant in Vulgar Latin *facére that reduced to *fére. Modern Spanish hacer reflects Vulgar Latin *fácere > *fácer and then remodeled to hacér in the Middle Ages. While an argument from stress variation in Vulgar Latin should raise eyebrows, it has at least one strong case in pero / peró.

A further case that Vulgar Latin *fácere existed is in Old Catalan far "to make," from a pre-form *fare that must derive from a stress-heavy /a/ that caused syncopation of the interior -e-. See Rufat (2013) for further discussion from a Catalan perspective; Chambon (2013) for additional remarks.