Can't have spaces when C-c n f or C-c n i?

That depends on the completion framework you use. Ivy has no problem adding space in minibuffer. Have a look at this thrread.