'Needs to' connects the previous term with the next, so 'a needs to chop b' has a chopping b, whereas 'need(s)' connects the next term to the one after that, as in 'a needs b to chop c' where b chops c.
As for your carrot examples:
Working:
"The carrots needs to be chopped." - The carrots would be a, and chopped would be b in the previous sentence structure. This is slightly modified however, b instead of being a noun, is a verb, signaled by the be before it.
"The carrots needs chopping." - In this case, need connects need relates chopping and carrots together since since chopping has no other words behind it.
Not working:
"The carrots needs to chop." - This obviously wouldn't work because it is a fragment, the carrots needs to chop what exactly?
"The carrots needs being chopped." - as in the example (second model) I gave, where a needs b chops c, this makes the carrots wanting being, which is not a noun, to be chopped, which does not make sense.