O problema do código é na inclusão do trecho " var totalGastoComEventos = 0;" dentro do loop da função while. Com o isso o código consertado ficou assim:
<meta charset="UTF-8">
<script>
function pulaLinha() {
document.write("<br>");
}
function mostra(frase) {
document.write(frase);
pulaLinha();
}
var totalDeEventos = parseInt(prompt("Informe o total de eventos"));
var contador = 1;
var totalGastoComEventos = 0;
while(contador <= totalDeEventos) {
var gasto = parseFloat(prompt("Informe total gasto com o " +contador + "º evento"));
totalGastoComEventos = totalGastoComEventos + gasto;
mostra("O gasto com o " + contador + "º evento foi: R$" + gasto);
contador++;
}
var media = totalGastoComEventos / totalDeEventos;
mostra("A média de gastos é R$" + media);
</script>