Disclaimer: I am not a college-trained swimmer or professional, just a reasonably skilled amateur front crawl swimmer.
My guess is that your main problem is not your body's shape, nor too little speed, but simply that you cannot maintain a horizontal / streamlined body position in the water.
This could be due to your holding your upper body (head, chest) up too high, which will cause your lower body (hips, legs) to sink down. Your reaction to this might be that you start to kick harder or faster (to avoid sinking further), which means you will have to breathe more... which will again induce (possibly incorrect) movement of your upper body.
Try keeping your head down in the water. When you need to breathe in, do not lift your head; just turn it sideways as you tilt your body to the side. This should be enough to get your face above the water surface.
Also, do not lift your head too much in order to see what's ahead; try facing the bottom of the pool.
"Could [it] be there my ectomorphic body is much denser than the average so I sink faster?"
Speaking from personal experience (my body has a fairly typical ectomorphic build, and I do reasonably well at the front crawl) I don't think that would be the main issue. I'd even say that tall, slim people's bodies would be more suited to floating / swimming than short or bulky people's bodies.
For instance, the theory behind Total Immersion claims that being able to make your body longer improves your streamline, i.e. allows your body to glide through water with less effort. If you have long, slim arms (as is common for ectomorphs), you will be able to reach further ahead, making your body longer. So having an ectomorphic build can actually give you an advantage.
True, if you have slim arms and hands, your "paddles" might be smaller, but...
"Could [it] be that my hands and feet are very slim so are not providing good enough paddles."
Total Immersion also states that if you want to swim faster, your primary goal should not be paddling harder or more effectively; it's much more important to reduce friction / water resistance, because that is what constantly slows you down. If all you do to overcome water resistance is to paddle harder, you're actually fighting yourself, because the faster you go, the more resistance you'll get.
If however you manage to create less resistance to begin with (by being in a more streamlined position), you'll automatically slow down less, and you won't have to compensate as much by paddling harder. The less you use your muscles, the less you'll need to breathe.
By the way, it's not just your hands that make the paddles; it's also your forearm's surface, at least if you your stroking arm's wrist isn't completely loose.
"Could it be that I need to go faster, and reach a certain critical nonsinking velocity?"
Seems unlikely. You don't need to go fast at all for you to not sink. In fact, one exercise my swimming instructor made me do when I learnt the front crawl was trying to float (on our backs) at the same spot without moving around; the premise behind this exercise obviously being that it is possible to stay afloat at 0 speed.
Granted, the legs do eventually sink if you don't move them at all; but it takes very little kicking motion to keep them in the horizontal. Again, when you do this exercise, try not to lift your head out of the water; you might even try the opposite, "resting" your head on the water.