"tum ko" and "tumhe" are pretty similar and are used interchangeably, though "tumhe" sounds more correct.
As for your second question, "tujhe" is used when you know the person well and he or she is in your age group. (basically when you talk frankly with friends). "Tumhe" sounds more respectful in Hindi.
I looked up “चाहिए” (on Wiktionary)[https://en.wiktionary.org/wiki/चाहिए] and it said it is second person imperative. Can someone explain how that applies to the context here? I understand the construction of
[dative] चाहिए meaning want—I just don't understand the conjugation of चाहिए.