I don't have time to evaluate and respond to all your points, but your first entry under "frightening discoveries" really jumped out at me. On line 499:
try closed_type ty with Non_closed (ty0, real) ->
The name "ty0" is a pattern capture variable, which the pattern matching construct binds to the first argument of the caught exn value with constructor Non_closed. It doesn't need a prior declaration... you are declaring it right there. Surely you were simply mistaken? I find it unbelievable that someone could write OCaml for years, even hacking on the compiler, without understanding basic pattern matching.