The primary motivation for this is optimization. E. g., Final Fantasy XVI calls GetModuleHandle() very often for the libraries (with short name) which are absent (and not supposed to be present) and that severely affects performance.
The functional difference which the patch introduces relates to the case when there is a differently named file which is actually the same as one of the loaded module. The included test shows however that for specific case of using short dll name for GetModuleHandle() the module is not found on Windows in this case (i. e., the patch does a functionally correct change).