It was Wawrinka's third title of 2016 and first on clay just a day before Roland Garros was due to get underway in Paris, where Wawrinka will defend his title.
"It's a dream come true to be able to win a title in Switzerland, after all these tournaments," Wawrinka said.
"To be able to do it here in Geneva, in the event's second year, is something special. The fans were great. They made a lot of noise today."
World number four and top seed Wawrinka broke the 11th-ranked Cilic to take a 2-1 lead on his way to the first set.
Cilic hit back for a 4-1 advantage in the second set before 31-year-old Wawrinka broke the Croat at 3-5 to get the second set back on serve.
In the tie-break, Cilic squandered five set points before Wawrinka took victory on his second match point.
"Marin is a great player," added Wawrinka. "He really ramped up the pressure toward the end, with those set points, so it was nice to be able to finish off the match."
Former US Open champion Cilic was playing his first clay-court tournament of the season and his first event since March because of a right knee injury.
"It was an amazing week for me and this was something I was not even expecting," Cilic said.
"I definitely have great enthusiasm now for Roland Garros."
Wawrinka will take on Czech Lukas Rosol in his first-round match in Paris on Monday.
Rosol famously defeated Rafael Nadal at Wimbledon in 2012 and was involved in a bad-tempered clash with Britain's Andy Murray in Munich last year when the Scot told the Czech that "everyone hates you".
Wawrinka, who shattered Djokovic's latest attempt to complete the career Grand Slam with victory in last year's final, defeated Rosol as recently as last Friday in the semi-finals in Geneva.
Roland Garros organisers will attempt to squeeze 54 singles matches into Monday's programme after heavy rain on Sunday allowed just 10 ties to be completed.
However, more bad weather is expected with torrential rain and temperatures hovering again around the 15-degree mark.