Because Nickname rules, obvousily. Nick/Nicky is short for Nicholas, Ken is short for Kenny/Kenneth, Jim is short for James (you can include Jamie as another nickname for James), Bill/Will is short for William, Pat short for Patrick/Patrica, Dan/Danny is short for Daniel, Tim for Timothy, etc etc. Some of them don't make any sense but they're there. Can you explain Bill short for William to me?
I have no idea, as a man named Timothy, how I feel about all this. Part of me wants to cringe, and part of me wants to laugh out of obsurdity.
I think we're all missing the important issue here. The question isn't why Jim isn't sort for Jimothy, the real question is why is Jim short for James?