1) Použitím dynamicky typovaného jazyka si (u netriviálních projektů) práci neušetříte, ale naopak přiděláte. Úplně ze začátku budete o něco rychlejší, ale to se rychle změní, protože budete pálit čas hledáním chyb, které za vás mohla odchytit typová kontrola. V pozdějších fázích pak budete zoufale zdlouhavě dohledávat, jaká je vlastně struktura toho či kterého objektu, protože ušetříte i na psaní dokumentace, jak je dnes "moderní" (*). Znám několik projektů, kde autoři "ušetřili" tím, že je napsali v Javascriptu a pak je horečně a za velkých nákladů přepisovali do Typescriptu.
2) Volba SQL / NoSQL taky není o ušetření, ale spíš o tom, zda vám na data pasuje relační model či nikoli.
3) Zrovna 10GB nesmyslů ošetříte omezením na web serveru, že tak dlouhý request prostě odmítne. Ale ano, server musí validovat vstupy. SQL vám nějaké validace základní udělá, ale ty jsou opravdu základní, takže tam nějaká custom validace musí být tak jako tak skoro vždy, zvlášť, pokud ještě mají být chybové hlášky nějak rozumně komunikovatelné uživateli. Můžete na komunikaci použít GraphQL, které vám udělá kontrolu zhruba na úrovní jako SQL, akorát umí dobře pracovat i s vnořenými objekty. Pro lepší validaci v Javascriptu doporučuji třeba yup.
*) Já jsem ze staré školy, mě ještě učili, že nejpoužívanějším příkazem dobrého programátora je REM.