Простое использование addEventListener для новой созданной кнопки, как вы уже сделали начальную.
let btnEvent1 = document.getElementById("btn_event_1");
let sectionA = document.getElementById("eventDemo");
let counter = 1;
function createElements() {
let newHeader = document.createElement("h1");
let newButton = document.createElement("button");
let newHeaderContent = document.createTextNode("Hello World " + counter );
let newButtonContent = document.createTextNode("click me");
newHeader.appendChild(newHeaderContent);
newButton.appendChild(newButtonContent);
newButton.setAttribute("type", "button");
// Important update: id value always come with different data
newButton.setAttribute("id", "btn_event_" + counter);
newButton.addEventListener("click", function(){
createElements();
});
sectionA.appendChild(newHeader);
sectionA.appendChild(newButton);
counter++
}
btnEvent1.addEventListener("click", function(){
createElements();
});
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Event Demo 3</title>
<style>
h1 {
color: rgba(0,0,0,.6);
background: #6e6e6e;
text-shadow: 3px 2px 3px rgba(255,255,255,.2);
}
button {
-webkit-box-shadow: 5px 5px 15px 5px #000000;
box-shadow: 5px 5px 15px 5px #000000;
border: 5px solid #1C6EA4;
border-radius: 40px 39px 40px 40px;
}
</style>
</head>
<body>
<section id="eventDemo">
<h1>Hello World</h1>
<button type="button" id="btn_event_1">click me</button>
</section>
</body>
<script src="demoEvent.js"></script>
</html>