Born in Zagreb to Herzegovinian Croat parents and raised in Drinovci,[1] Majstorović started his career at the nearby NK Vinjani before moving to the nearby second-tier side NK Imotski's academy. He made his debut in the Druga HNL at age 17, establishing himself as a starter in the club's defense in the spring part of the season. He was immediately signed the following summer by RNK Split but loaned back to Imotski, where remained for the two following seasons, which saw the club relegated to Treća HNL and their immediate return to Croatia's second tier. The 2014/15 season saw the young centre-back join RNK Split's first-team squad, as the team's fourth choice on his position, behind Nino Galović, Tomislav Barbarić and Branko Vrgoč.
He made his Prva HNL debut on 7 November 2014, a day after his 21st birthday, in the 1–0 away loss to NK Slaven Belupo.[2] Majstorović established himself, however, as the first team regular in the autumn part of the 2015/16 season, missing only a single game in the first 11 rounds, due to three yellow cards.
On 2 March 2021, Majstorović signed for Shanghai Port for a 3.3 million EUR fee.[3] Two serious injuries however prevented him from playing for the club and he terminated his contract in January 2022.[4]