1. Because romanised Japanese words usually sound incredibly weird, mainly because the phonemes/ syllables are not obvious, in addition to the different pronunciation of certain letters, e.g. ふ or fu isn't really the same as 'fu' in English, it's more a combination between 'fu' and 'hu' that makes ふ's pronunciation.
It's not the fault of the translators/ name coiners, it's just lost in translation. Using an example:
Fushigidane/ フシギダネ is Bulbasaur's Japanese name. How exactly is an English (or any non-Japanese) speaking child supposed to know how to pronounce that?
Fushigidane's syllables are split as such: Fu-shi-gi-da-ne. Take the last part of the name, ダネ/ dane. Seeing "dane", and English speaking child would pronounce it the same way you say Dane (i.e. Danish person).
Additionally, Fushigidane doesn't mean anything to anyone who's not Japanese. It's really hard just to remember a random bunch of syllables that don't make any sense (as far as a non-Japanese child is concerned). Bulbasaur is a much more obvious and relatable name to English kids.
It's got a bulb on its back.
It looks like a baby dinosaur.
2. I'm sure in a promotional video or an obscure handbook somewhere, some names might have been explained, but as with most things in Pokemon, it's kinda obvious why most Pokemon have been named as such.
Mr. Mime - yea okay, it looks like a mime.
Dragonite - yea, dragon, got that.
Oddish - Odd radish. Something like that. It's an odd plant.
Emonga - Momonga (Japanese flying dwarf squirrel).
Also, I guess this is more lateral logic than anything else, publishing a book with all the origins of Pokemon names will make a really boring read, and depleting the internet of another discussion topic (how will be live /end sarcasm). Maybe it's personal experience, but Nintendo/ Gamefreak/ Pokemon kinda like us to speculate.