

The above have answers in blue
Which bits will be used for what? Eg. I know lst 2 LSB are byte offset. Then which bits will be used for word select, block select & tag?
What I did was
- 2 LSB: Byte offset
- 1 Bit: Word select
- 4 Bit: Block select
- Rest: Tag
But it appears wrong? For (a) I have

(b) incomplete I think but its already wrong

This part of your reasoning is incorrect:
Remember that the problem says the word size is 16 bits or two bytes, so only one address bit is used for byte offset within a word.
Again, this has absolutely nothing to do with MIPS which has a 32 or 64 bit word.