Your reference to the vessel being "300m long" completely misses the fact that the Nebulon-B is almost completely empty space! We're talking about volume, not total linear length of a spindly spar.
No, I considered that. A Ford class is 330ish meters long and is designed to carry 90 aircraft including fighters, transports, helicopters, UAVs, and special mission craft like spyplanes, EW craft and so forth, and it carries them on essentially 2 decks (The flight deck, which runs the full length of the ship, and the hanger that's about half.)
A carrier in Star Wars doesn't need the flight deck (no need for runways). So just roughing it out, you remove the flight deck and can now carry around 45 aircraft. Half that number again to consider the front section of a nebulon-b and you've got 22.5 craft. So it's well in the 24+1 fighter ballpark, and that's on only one 100ish meter hanger deck. I can't say that the Far Orbit deckplan is 100% accurate about it's placement of every support system, but from a rough big picture perspective there's ample room for the fighters, shuttles, and plenty of external hull space for the cannons.
Naval aircraft just don't require that much space at the end of the day, it's actually one of the critical acquisition requirements.
Also just a secondary thought, do carriers even carry that much by way of space parts? I'm sure they carry plenty of common replacement components. It just strikes me that if you're on a combat cruise and a plane comes back too shot up to safely fly to a land base, and too damaged to repair on the ship you'd probably just strip it for useful components, and shove whatever was left over the side. I mean in Empire we see that a Star Destroyer normally dumps it's garbage (including light freighter sized... things) before jumping to hyperspace. So dumping a few TIE hulls is certainly in the cards...
Now, as to the Star Wars doctrinal dependance on fighter craft... yeah that I don't totally get that beyond "fighters are cool."