разница между твоим кодом и моим только в том что ты перезаписываешь скрытое свойство __proto__
(Object.create);
var app = {
method: function () {return this.age},
}
app.Section = {App: app}
можно делать так
var app = {
method: function () { return this.age },
}
var obj = Object.create(app);
obj.age = 22;
console.log(obj)