I think I fixed it ... but I’m not sure what exactly fixed it so I’ll just post ALL my changes

Feel free to decide what was irrelevant.
So ... first of all. I conclude that output modifiers DON’T modify DB values, they just format ...
The changes were made to the Snippet calls ...
[[!UpdateProfile? &submitVar=`login-updprof-btn` ]]
[[!UpdateProfile?
&preHooks=`formatDobInput`
&submitVar=`update-date-btn`
&placeholderPrefix=`spc`
]]
I made two instances of update profile snippet call. Got this idea from something Mark H. pointed out about a posthook. (Though it was off) Figured that the prehook ran EVERYTIME I submitted even if I wasn’t editing the DOB ... so I made a normal snippet call and a special call for the DOB field.
That’s it.
That was the problem, the prehook kept running even when editing something that wasn’t needed.
Thanks guys. Hope this info helps someone else in the future.