Problem with Jack in this movie is he's just a drunken idiot.
Re-watch the first movie and he's the drunken master. He has a plan.
I made a point earlier in this thread that the story feels like it was good. Then someone along the way butchered it.
My own idea to a better story line would have been Jack being forced to confront his own destructive tendencies. The compass has never been willing traded without Jack having a plan to get it back later. The trade was when Jack choose booze over his own freedom, which the compass has grown to represent. The compass releases Salazar and Jack is forced to confront the consequences of his pact actions in Salazar.
This whole film should have been about redemption. The film should have followed a better written daughter of Barbossa. She had the more interesting setup than anyone else.
An orphan abandoned, who takes an interest in science, but due to her convictions and morals. (Instead of being called a witch just because she is smart. It can work, but without some over character trait, that joke just got annoying.) Have her go looking for a captain to help her find the Trident.
Meanwhile Jack has the safe scene from the Fast and Furious take place.
She meets Jack after he is abandoned by his crew and tells her to bugger off in a drunken stupor. He then makes the choice to give up the compass. The night sky turns red and Salazar is released. The daughter notices this and realities that this captain may be able to help her produce the map. Before she can speak to him Jack is arrested.
Jack is locked in prison where even the other pirates refuse to associate with him, or frown on him due to the way he treated his crew. That same night Salazar and his crew attack the port. (remove the can't step on land thing, as all that did in the film was stretch it out another 30 mins.) Jack and daughter escape, but realise that if they have any real hope of getting off the island, they need to get to Barbossa. Jack agrees to this because he hears the Trident can hurt even the undead.
Appealing to Barbossa's vanity they get on the ship. Unaware that Barbossa bought the compass and that it has only started pointing away from land after they got on the ship. Unable to produce the blood moon needed for the map, the characters go looking for a witch to help them cause the blood moon. Eventually they cause it, but the witch warns Barbossa that what he desires most will always be out of reach until it is too late.
The blood moon allows the daughter to produce the map. Along the way Jack is unable to obtain a drink. To keep him from going mad they ask him about Salazar. Jack reveals that Salazar was the first man he killed and part of the reason he drinks so much is that the men on Salazars ship were the first he killed and he's never been able to move on from it.
Throw in some sort of undead beasty or a British Fleet looking for the pirates responsible for Salazars attack on the port. Maybe have Salazar meet with the witch and they strike a deal that if she tells them where the heros are, she can hold onto his soul. (Setting up a sequal).
Barbossa and the daughter who at first don't like each other slowly realise they have more in common and eventually start to suspect their real connection.
Salazar and the heros meet at the location of the Trident. Salazar tries to kill Jack but Jack stalls him by understanding his hatred and apologizing. They destroy the Trident before Salazar can kill jack. The movie ends as per the original. Daughter and Jack live, Barbossa dies. Daughter and Jack sail off to find more treasuer as she realises the only way for her to be truly free is to live like a pirate in the sea. Jack tosses his booze into the ocean, only to find the compass float to the top.
Maybe a bit cheesy, but way better than what we got. Oh and the extra scene is the Witch holding Salazar's sole in a Jar and her looking onto the Flying Dutchman as dark energy crackles.