Reverse Engineering Stack Exchange is a question and answer site for researchers and developers who explore the principles of a system through analysis of its structure, function, and operation. It only takes a minute to sign up.
As you need just 2 more bytes, you don't need a large code cave. Out of the box, there are four things you can try:
It's very likely you have a function or 2 in your text segment that are present in some source code, but never called. Look for loc_XXXX labels that have the standard function prefix (push ....,LR) and the suffix (pop ....,PC) a few dozen bytes later. Reuse these functions for your code cave.
Check if there are any redundant instructions in your code. Maybe you can omit 2 bytes somewhere nearby and move the rest around.
Often, function starts are aligned to 16 byte boundaries. There might be a few spare bytes between your current function and the next. These can show up like nop.w in assembly, or f3af 8000 in hex.
You could use the text of a rarely used error message for your code cave. Replace "ThisIsALongErrorMessage\0" with "LongError\0" and you've gained some bytes, at the expense of the clarity of an error message you're never likely to see anyway. This is a bit harder, since your text is probably in some section that isn't marked executable, and you'll have to fiddle with the ELF headers to fix this.