Por bom design, quero dizer coisas como arquitetura e classes significativas, bom uso de padrões de design, bom uso de abstração, boa organização de componentes, alta coesão e baixo acoplamento entre componentes.
Primeiro, um software, bom ou ruim, não vive na solidão - ele modela um cenário do mundo real que os humanos concebem como um problema e, portanto, está sempre associado intimamente a algo chamado "domínio de aplicativo". Portanto, sempre que você falar sobre software, primeiro conheça e estude o domínio - pois somente então você poderá atingir o discernimento de bom e ruim.
git - não apenas bom, mas um design incrível. Não é um controle de versão em sua essência, apenas um sistema de arquivos. Uma fina camada de funcionalidade no topo do núcleo faz dele um sistema de controle de versão. Conheça os aspectos internos do git, e seu senso de design de software será esclarecido.
jQuery - não uma biblioteca documentada muito bem (internamente), mas uma fonte inspiradora que demonstra como o código JavaScript do lado do cliente pode fazer maravilhas.
NodeJS - se você gosta de criar servidores, este projeto tem idéias e padrões novos e refrescantes para oferecer.
v8 - código C ++ muito bom, biblioteca fantástica para aprender / estudar implementações de máquinas virtuais.
Projetos NoSQL - Couch, Mongo, Redis, Cassandra - esses projetos demonstram maneiras inteligentes de resolver problemas de persistência. Eles também abraçam a idéia de persistência poliglota.
Impulsionar bibliotecas - boa dose de C ++.
Pilha aberta - projetos muito bons em computação em nuvem e virtualização.
Fundação Apache Software - Escolha um de seus projetos e estude-o. A estrutura modular do HTTPd é uma excelente fonte, se você quiser ver como os componentes se reúnem. APR (apache portable runtime) - uma lib realmente boa também.
mod_wsgi - um dos melhores programas em C que eu já encontrei.
"bom uso de padrões de design" - NÃO é importante que o código corresponda a um padrão de design conhecido - é mais importante que ele resolva o problema "de maneira inteligente" - que seja sustentável, reutilizável e legível. Se o código estiver repleto de uma "forma" específica - apenas para aderir a um padrão de design - pode ser um código incorreto.
"não menos que 100.000 linhas de código" - desde quando o número de linhas se tornou uma métrica de boa qualidade - obter uma amostra de "software bem projetado / arquitetado" não exige que seja GRANDE.
Novamente, lembre-se de estudar a natureza e as nuances do domínio do problema primeiro e depois mergulhe na leitura do código.
ATUALIZAÇÃO: Oct. 2015
InfluxDB - https://influxdb.com/
Este projeto Go está em desenvolvimento ativo e ainda NÃO é muito complexo. Assim, você pode começar a digitar códigos com relativa facilidade do que algo como o OpenStack.