I really like Jem for James. I think of Jem from To Kill A Mockingbird...(I think the character's full name was Jeremy though). However, as kid of the 80s, I also think of the cartoon girl rocker JEM. So, I think it could be used for boys or girls kinda like Ash or Sam.
80's girl myself, I do think of the cartoon. But Jem reminds me more of Anne's son from the Anne of Green Gables books. He was a JamesMatthew I believe. I really don't find it feminine at all, in spite of the cartoon.