There are similar, but not the same thing. In fact, they complement each other when the programmes are about improving the enterprise itself.
Let's try to define them.
Enterprise Architecture is about the architecture of the enterprise itself, with the purpose of improving how the enterprise does what it does, or how you put it in your post, to be better at what it does. It's about organizing, changing, aligning the different components of the enterprise, to work together more efficiently. That can translate into better structures, better processes, better technologies, better systems, better capabilities, etc.
Now a Programme is a strategic objective that brings significant benefits to an organisation, if implemented. But the objective is usually big. So it needs to be split into smaller projects that create what's required to make things happen. You can work on those projects individually and then put the results together to achieve the objective you started with. But because these projects are connected to the same objective, they need to be managed together. There needs to be alignment. Building projects in isolation might provide some benefits where the projects are built, but it's only by all working towards the same objective that you get those significant benefits. So then, Pogramme Management is about the coordination of these related projects with the purpose of delivering the strategic objective.
A company can run multiple Programmes at a time. And many times is just about making more money (for example, market expansion with new products, or penetrating a new market segment where there is less/no competition).
But sometimes, the Programmes are not just about making money, but about improving the enterprise itself (to become better at making money :-)).
This is why I said at the beginning that they can complement each other. Because you could identify ways to improve the organization (this is Enterprise Architecture) and in order to implement the improvements, you create programmes of actionable projects that you execute to get the results, projects that need to be managed at this programme level because they are part of the same initiative (this is Programme Management). So in this case, you could say that Programme Management is responsible with implementing the changes proposed by the Enterprise Architecture.
If done properly, they don't just complement each other, but can feed on one another. For example, you can identify improvements at the organization level, that you implement with programmes, and with the lessons learned from there you can further find improvements at the organization level. And better capabilities, processes, systems, etc., of the organization now enable better Programme Management and project execution. And with better execution you can identify further improvements, and so on.