Sadly, I've noticed this myself. Have you reported these things to the IPFS developers?
> you need to keep the http request alive for the multiple days it might take to pin something
I didn't understand this part. You make the HTTP request towards your local IPFS daemon? Why does it take several days to pin something?