Let's try to simplify this even further and use a handful of extra keystrokes, they are cheap, to try to make this more understandable for a new user.
Suppose you wanted to write a function that would be given a list of three elements {a, b, c} and you wanted it to return {{a, b}, c}. You might see the similarity between this and what you want to do with your data, but you need to do this to every row in your data. We will get to that in a moment.
Now in Mathematica there are at least twelve different ways of writing anything and at least several of those are completely incomprehensible. Here is one way to do this. Look up Most and Last in the documentation until you can think you understand what this is doing. You might even look up in the tutorials about how to define a function if you need to start with that.
f[v_]:={Most[v],Last[v]};
But you don't want to do that to just one list of three elements, you want to do that to every row in your matrix. The Map function does exactly that, it will take the name of a function and "do that function to every element of a list." You can think about your matrix as a list of rows and your f function will take a row and return the modified result. When Map is done it will give you all those results in a list. So you can write
Map[f, matrix]
and get what you need.
Now back to the twelve ways and saving keystrokes. There are shortcuts and abbreviations you can use in Mathematica to save a keystroke here and there. After a while you begin think that is the way you should write code. That is fine. Here is a method that saves a few keystrokes using # and & notation that does the same thing. But you have to learn anonymous functions and how to write those before this becomes obvious.
matrix = {{193.303, 601.595, 0.001079}, {193.383, 612.928, 0.000071},
{199.129, 476.9, 0.000828}, {199.21, 488.223, 0.000761}};
Map[{Most[#], Last[#]} &, matrix]
gives
{{{193.303, 601.595}, 0.001079}, {{193.383, 612.928}, 0.000071},
{{199.129, 476.9}, 0.000828}, {{199.21, 488.223}, 0.000761}}