If you only have five bit, then yes, the answer of 10+27 in binary is 5, because the maximum you can store in 5 bit is 2^5 - 1 = 31d = 11111b. Including the 0 you can store 32 distinct values in a 5 bit variable. So your result is 37mod32 = 5.
The most significant bit is the bit with the highest value, being the leftmost bit in your case. This bit, if 1, has the decimal value 16.
The "carry bit" is the bit, which is next to the MSB, not anymore in the variable itself. So to say the "sixth bit" in your five bit variable. It has the initial value 0:
0 01010
0 11011 +
---------
1 00101 =
But the resulting value 1. So you "carry out" a 1. This can be used by the computer, i.e., to detect such an overflow.
Let me know if you need more details on this.