Forfeiting allows a new game to start
The short answer to why forfeit is to close the match without getting banned.
If you leave a ranked match without forfeiting, then you incur a 5-minute ban from matchmaking (both ranked and unranked).
In my opinion, this is a large factor here that hasn't been addressed.
Earning ranked rewards in the game is solely based on wins at certain ranks. For example, if you want to earn Gold rewards, then you must win 10 times while ranked Gold or higher; however, you must do this for each tier before that as well. So that means you need to win 10 to get through Bronze rewards, win 10 to get through Silver rewards, and then you can win the 10 for Gold.
That is 30 wins, and considering that most matchmaking tries to pair you evenlyish, that means 60 games in the best-case scenario. For people not taking Rocket League that seriously, for whatever reason they have (all are valid; this is just a game after all), playing 60 games is a decent amount of effort. Tack on another 40 wins if you want to reach Grand Champ, and don't even get me started on how many games that are, because they aren't always at the right rank.
For this season, I am 4/10 wins in Grand Champion, but have dropped to Champ 3 Div 3 at the moment, which means I need to climb back into Grand Champ to even begin to try to get the other 6 wins. It has not been easy.
There are some social norms to forfeiting
In most ranked matches, once you are losing by 3, it is probably a lost cause. 4 is very hard to come back from. So, depending on how much time is left, once you are down by 3, the general consensus and expectation is that it is fair to vote to forfeit without being toxic. Sometimes, you can be down 2 and really just play your heart out, but it becomes highly unlikely that you get a goal and then an equalizer in the last 30 seconds. By the last 10 seconds, it is essentially not going to happen, and sometimes people will forfeit then, even though, as you note, there isn't much time left.
Forfeit voting isn't consistent across league rankings
The overall behavior of forfeiting changes based on your league, though. For example, even if you are getting Brazil'd (losing 7-1) in rank S (private pro lobbies), you will not see a forfeit. That is because they are training, sometimes messing around, but overall attempting to improve. Moving on to another match doesn't make as much sense.
Just below that is Grand Champ. It is excessively rare to see anyone leave a Grand Champ game before it finishes. There is always that hold out of hope to turn the match around, not to mention that most Grand Champ players are attempting to improve their play and get time in against strong opponents.
Champ.. This is where you start to see some of the issues commonly associated with "rage quitting". Missing an open net too many times, or whiffing saves too many times, especially when the opponent reaches more than a 3-goal lead, will almost always lead to a vote to forfeit and move on.
Diamond is just awful for this. Accidentally bump your teammate, and they will vote to forfeit. Plat is a little better, as everyone there is mostly trying to get air balance down and is not entirely concerned about winning or losing. Gold is where most of the game is played, statistically speaking. It is an overall A for Effort space. Silver and Bronze are just a roll of the dice.
Source: a lot of personal experience in ranked, for example: