if there is a stalemate, maybe do another round?
Well you still run into the same problem.
For example:
Feliks Zemdegs (best 3x3 avg) vs Cale Schoon (best FMC average). Feliks will always get faster times so he'll never worry about move count and Cale will always have the more efficient solves so will never worry about speed. Even if you added another round each competitor would continuously tie ad infinitum. If the goal of the event is to promote fast AND efficient solves than you need to balance move count and speed relative to one another.
Let's say person (a) gets a 7 second solve in 54 (HTM) moves and person (b) gets a 14 second solve in 44 (HTM) moves.
Person (a) gets a score of 7+52 = 59
Person (b) gets a score of 14+46 = 60
So person (a) wins! This helps to ensure that there is a balance between the two approaches. This would mean that CFOP, which is more optimized for speed, and Petrus, which is more optimized for efficiency, would both be viable options. This mixed with the head to head would be particularly interesting as each competitor would have to react to their opponent. In the example above person (a) may want to slow down a bit to shave off a few moves while person (b) may want to increase their speed sacrificing efficiency. This means that the event would be much more dynamic that both FMC and 3x3 events.
That being said, you would need to lab it out to find the balance that you would want. I'd definitely like to participate in a mini online comp to see where things would go. I really love Petrus and would be excited to use it in an event where it would be relatively competitive.
Note on scoring/point system:
Another thing to add is that I really like the idea of having an alternative scoring/point system instead of the standard mean/average. It gives a bit more variety and a more dynamic style in the head to head (adjusting your solving style based on the score of the other person after each solve).
Here are some ideas that I've come up with based on your proposal (head to head):
(1) The most basic system would be to have 5 solves and whomever has the least score each solve wins that round (get +1 point). Whomever reaches 3 points first wins the head to head.
(2) Another system would be to set a cap on the total sum of points. So whomever reaches X total points first loses (just adding the score from each solve. If both break the score cap than whomever has few total points wins). This approach would be nice as for less experience solvers they'd take fewer rounds to win while for more experienced solvers there would a lot more room for competition and comebacks and such.
(3) The last system I thought of would be similar to (2). The competitors would have 3 solves and whomever has the least sum within a certain difference wins. This would be similar to tennis in that you would need to win buy a certain amount of points to win the head to head. For example lets say you have 3 solves and you need to win by 10 points. Person (a) get a total of 150 and person (b) gets a total of 165. So person (a) wins. But let's say person (a) gets a total of 155 and person (b) gets a total of 160. Then you would go into a sort of 'overtime'. Each competitor would go head to head in 2 more solves and whomever has the lesser sum wins.
(Online comp/ labbing):
(1) For an online comp the above options wouldn't be viable without some kind of stream setup and bracket system. So most likely we would have people submit times and move count and just rank them based on score. Lowest score wins.
Okay finished. Sorry for the wall of text (sorry not sorry).