1) I think "to remember" is a bit different to "to recall", then: “记”=remember, "想起来"=recall. So, "想不起来" could happen at a sudden occasion, and "想起来" later,while "不记得" almost means the memory is lost.
2)“不记得”is a bit more formal“想不起来”, only a little bit. It's very possible ppl don't differ them in normal talks.
3)better way to say? 我想不起什么更好的说法来了。