River Plate Cabrera began his career in the River Plate Academy. He began training with the first team in preseason ahead of the 2014 Torneo Final. Cabrera made his first team debut on 23 February 2014, coming on as a substitute in a 3–1 loss to Cólon in a Primera División match. Although he would make the bench for a league match in May, he would not make another first team appearance for River. During the 2014/15 season Cabrera played primarily for the reserve side, starting 13 games and helping the River reserves finish top of the standings. Montreal Impact On 8 January 2015 Cabrera joined MLS club Montreal Impact on a season long loan. He made his Impact debut 24 February 2015, helping Montreal get a 2–2 draw with C.F. Pachuca in the first leg of the quarterfinals of the CONCACAF Champions League. He scored his first career goal as a professional on 18 March, helping give the Impact a 2–0 win over Alajuelense in leg one of the CCL semifinals. Cabrera made his MLS debut on 21 March, helping Montreal to a 0–0 draw with the New England Revolution. On 11 April, Cabrera suffered an ankle injury that forced him to miss over a month and both legs of the Champions League final, a 5–3 aggregate loss to Club América. Cabrera helped Montreal allow the second fewest goals allowed in the Eastern Conference and finish in third place. Cabrera helped Montreal to a 3–0 win over Toronto FC in the first round before falling in extra time to the Columbus Crew in the quarterfinals. Cabrera signed permanently with Montreal on 23 January 2016. He made his first appearance of 2016 on March 6, helping the Impact to a 3–2 victory over the Vancouver Whitecaps in the opening game of the year. Cabrera would appear 23 times in the league to help the Impact qualify for the playoffs. Montreal would reach the conference final where they lost to Toronto extra time, with Cabrera playing every minute of the playoff run. He made his first appearance of the 2017 season in matchweek 2, a 2–2 draw with the Seattle Sounders on 11 March. Cabrera suffered a leg injury on 15 April that forced him to miss six weeks. Cabrera would make 20 appearances in the league during the season, but Montreal would miss out on the playoffs for the first time since Cabrera's arrival after finishing in 9th place in the conference. Cabrera suffered a calf injury in early May 2018 that sidelined him for over a month. He also dealt with knee and thigh injuries throughout the season. Cabrera only made 13 league appearances on the year as the Impact missed out on the playoffs for the second year in a row. 2019 was another injury plagued campaign for Cabrera, missing time in May due to a knee injury sustained in training. He would then miss over two months due to an elbow injury. Cabrera only made 16 appearances in the league as the Impact missed the playoffs again. He did help Montreal win the 2019 Canadian Championship, appearing 4 times in the tournament and playing every minute in both legs of the final. On 9 August Cabrera signed a new contract with Montreal. Houston Dynamo On 20 November 2019, Cabrera, along with $100,000 in General Allocation Money, was traded to the Houston Dynamo in exchange for Romell Quioto.