Второй элемент станет undefined, но что с тем объектом произойдёт далее? Его подберёт сборщик мусора и высвободит или это утечка, если я так буду делать постоянно?
Когда вы удаляете объект с массива, вы лишь удаляете ссылку на этот объект, а не сам объект. Если нигде больше нет ссылок на этот объект, то можете за него больше не беспокоится, его удалит сборщик мусора.