Oi Nikolai,
Você quis dizer fazer algo assim né:
    var paciente = {
        nome: form.nome.value,
        peso: form.peso.value,
        altura: form.altura.value,
        gordura: form.gordura.value,
        imc: calculaImc(this.peso, this.altura)
    }
Então, isto não funciona por que este objeto ainda está sendo definido quando tentamos executar o calculaImc, e ele não tem o contexto próprio ainda para definir o this. O this, no exemplo que dei acima na verdade ainda é a própria janela do navegador, que não tem as propriedades peso nem altura e logo dará erro no cálculo do IMC.
Um jeito de conseguirmos definir o peso e altura  a partir do próprio objeto paciente, como você quer, é  definir por partes.
Primeiro criando um objeto paciente:
    var paciente = {
        nome: form.nome.value,
        peso: form.peso.value,
        altura: form.altura.value,
        gordura: form.gordura.value,
    }
E depois que ele já existir e estiver definido e que vamos adicionar uma nova propriedade a ele, que é a propriedade imc utilizando os dados do próprio paciente:
paciente .imc = calculaImc(paciente.peso, paciente.altura);
Ai ele não acusará erro e conseguiremos definir o IMC a partir dos dados do próprio objeto paciente.
Me diga se esclareci sua dúvida e será isso mesmo que você havia perguntado. 
Abraços,
Douglas Quintanilha