My DS is 3.5, he may even have a more limited diet than your LO! Every time he gets ill (and stops eating all together) he knocks another tolerated foodstuff off the list. Until last tonsilitis, after months of trying he started eating pasta worms (spag) and smooth tom sauce with cheese on, not now!
He is under Paeds etc as he does have SN, including Sensory Integration Disorder - not suggesting for a minute that your Lo does - and he has seen a dietician and nutritionist.
I had to keep a food diary for 2 weeks and then they looked at it and said he is getting all the major food groups each day, he'll be alright.
He too has very pale stools. he is 50th+ centile height, below 25th centile weight.
If I try and 'hide' food in something he'll eat he just refuses to eat at all.
I just try to make every mouthful the best it can be...(get ready to suck eggs, I'm sure you've heard it all before)
He'll eat pizza, so I make my own with wholmeal flour I can often 'hide' a tiny veg portion in the sauce if I mouli it to be very smooth.
I make my own organic salmon fish fingers, cut up salmon, roll in egg, roll in crushed cornflakes and fry. You could try the same with chicken dippers.
He loves cooking and helping me and will often try the ingredients - he ate loads of stilton on sunday
We make lots of biscuits/muffins/cakes because then I know it is just pure butter and sugar (plus the other bits).
His main fave is jacket spud, into which I mash lots of butter and cheese - cream if I have it, he'll sometimes eat a huge one.
BUT if you have invested much time and thought into making the something scrummy it hurts all the more when it is rejected.