The Cardiff hosts looked set to cough up a two-goal lead, when Andy King was sent off in the infancy of the second half, with Cyprus having hit back before the break to make it 2-1.
But Coleman's men showed plenty of grit to secure a valuable three points that sends them provisionally top of Group B.
And after two unbeaten results in four days - Wales also drew 0-0 with Bosnia-Herzegovina on Friday - Coleman said their toughness had been on display.
"We never had that in the last campaign. I thought we were too soft in the last campaign," Coleman told Sky Sports.
"We probably played better football in the last campaign, in a lot of games, sometimes it came off for us and we won, but we were too open and gave sloppy goals away - we weren't difficult to beat and when we went behind we couldn't get back.
"We're a different group of people this time.
"The group has really matured, a lot of those that have been around a while have really matured and the younger ones have got belief.
"The togetherness is incredible. If we didn't have that, we wouldn't have won the game tonight."
Coleman conceded he felt Wales were ripe for the picking when they went down to 10 men due to King's crude challenge on Constantinos Makridis.
"My heart was jumping out of my chest. When I saw the red card, I thought that's going to kill us," the 44-year-old said.
"We went 2-0 up and were cruising and should be three or four up, really. We got a bit sloppy. I think we thought it was going to be a rout but these games you have to kill them off.
"We got to half-time and said, 'let's set our stall out and be calm', but with the red card so early on you think it's not going to be our night. But credit to our players.
"We're greedy now, we want the points, we want to get them no matter what we have to do to get them, and we've done that. It was a great three points."
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.