why do people say "Kee-hoe-tay" but "Kwix-otic"?

Quixote is a Spanish name, so we pronounce it in Spanish (or as close to Spanish as our poor little gringa tongues can extend themselves). Quixotic is an English word derived from that name so we pronounce it English like.