Morrison played for the Ohio State Buckeyes from 1947 to 1949. As a sophomore, he was an end and led the Buckeyes in receptions, with seven for 113 yards. In his junior year, he moved to fullback when starter Joe Whistler was injured in the first game of the 1948 season. When Whistler returned, Morrison continued at fullback as a backup.
Morrison took over the fullback position as a senior in 1949 and led the Buckeyes in scoring, with nine touchdowns. His best rushing game as a college student was against the USC Trojans, in Los Angeles, on October 8, 1949 when he rushed for 134 yards. Later that season, the Buckeyes returned to Southern California for the 1950 Rose Bowl against the California Golden Bears. In that game, Morrison rushed for 119 yards, and the Buckeyes won 17–14. Morrison was named the game's MVP. He was inducted into the Rose Bowl Hall of Fame in 1993.
Morrison was drafted by the Chicago Bears with the tenth pick in the 1950 NFL Draft. He was with the Bears for four years, leading the team in rushing two of those years. He was traded to the Cleveland Browns, where he spent three more years and played in three championship games. He led the Browns in rushing once (1955), making his only Pro Bowl appearance that year.