IMO the large 1st-player advantage given by the rules necessitates multiple games for each level, with serve alternating between players.
Victory would then require a 2 game lead (break their serve & hold yours).
Basically Tennis tie breaker.
1st serve wouldn't matter, so decide it with a hidden coin toss.
It'd elongate each level, but it seems to me all the other alternatives are radical departures from the classic game.
At the end, we decided to implement the following approach:
1. Each player continues to shot until a mistake is made.
2. After a level is finished:
- In a game against the computer, the human always moves first, giving him/her an advantage (as you *are* willing to win when you play alone, right?). The most difficult part is to adjust the smartness of the computer accordingly, to match your level and give you a feeling of an honestly earned victory. Personally, I like to finish with a score such as 11:9 or 12:8. Losing is not nice, and winning with a big difference like 16:4 feels not interesting enough.
- In a two-person game, we give two rounds for each level, so that each player would have an opportunity to move first. In this case, you might have a minuscule advantage it you are the second player to start a round (as you could see whether the initial moves of your opponent were good or bad and change your strategy accordingly). But it will disappear after both of you played the whole game a few times and already know how to better deal with each level.