Almost certainly has nothing at all to do with JPG vs PNG vs GIF, and simply the sizes of the files. I suppose your JPGs must be smaller than your PNGs and GIFs!
When you use GET (not "request" - EVERYTHING is a "request" - there are GET request, POST request, etc...) there is no body sent. So, your data is sent as a parameter as part of the URL! You will trip on the server's limitation on URL length.
When you use POST, jQuery uses the request body, and so you won't sent a hugely-long URL.
As to why your POST didn't work - that's anybody's guess, without seeing the code you tried for POST.