After Abel Hernandez had cancelled out Rory Gaffney’s opener, Bowen curled home with three minutes remaining to earn a first pre-season win this summer.
Leonid Slutsky named the same starting eleven as for the previous friendly against Oxford United, although Adama Diomande missed out on a place on the bench with a stiff back.
Rovers threatened early with Allan McGregor getting down smartly to save Billy Bodin’s low drive while at the other end Sam Clucas saw a shot blocked.
Evandro pulled up and had to be replaced by James Weir just 12 minutes in and that was just about it in terms of noteworthy incidents in the tamest of tame first halves, McGregor again saving from Bodin in the closing moments.
Half time brought a couple of changes and a slight reshuffle as Josh Clackstone and Dan Batty replaced Brian Lenihan and Kamil Grosicki. Ola Aina switched from left back to right back, Max Clark moved to left back with Clackstone operating as a centre back. James Weir moved wide left, Batty played in the middle of midfield with Markus Henriksen pushing forward to support Hernandez in attack.
Bristol Rovers took the lead in the 51st minute, Rory Gaffney taking advantage of a mistake in the Tigers’ back line before rounding McGregor and slotting the ball into the net.
Gaffney had an effort ruled out for offside soon after, with Batty giving Rovers’ goalkeeper Sam Slocombe his first real test of the evening with a daisy-cutter from 25 yards.
The Tigers levelled in the 67th minute when Henriksen slipped a pass through for Hernandez who beat Slocombe at his near post with a left-footed strike.
Hernandez almost doubled his tally a minute later, but this time Slocombe had his near post covered to push the ball away for a corner which Michael Dawson headed over the bar, while Bowen poked wide at the far post when the Tigers next won a corner.
Bowen then hit the post before netting a winner three minutes from time with a curling left-footed effort from the edge of the box.
The Tigers are back in action on Saturday when they face Benfica at Estadio Algarve.
Hull City: Allan McGregor, Brian Lenihan (Josh Clackstone 46), Michael Dawson, Max Clark, Ola Aina, Jarrod Bowen, Sam Clucas, Markus Henriksen, Kamil Grosicki (Dan Batty 46), Evandro (James Weir 12 (Greg Olley 82)), Abel Hernandez (Greg Luer 80).
Subs Not Used: Jon McLaughlin.
Bristol Rovers: Sam Slocombe, Daniel Leadbitter, Marc Bola, Tom Lockyer, Tom Broadbent, Stuart Sinclair, Liam Sercombe, Ollie Clarke, Ellis Harrison, Billy Bodin, Byron Moore.
Subs: Johny Burn, James Clarke, Rollin Menayese, Ryan Broom, Chris Lines, Rory Gaffney, Tom Nichols, Adam Smith, Cameron Hargreaves, Luke Russe.