Looks great! I wish I was that good at mapping UV's.
it's not that hard.
for these kind of mesh shapes, with no cylinder, no real plane... I use automatic mapping (which is generally not recommended)
first step, chose your mesh, "create uv" -> "automatic mapping" (clic the square for options)
- 6 planes (or more planes)
- less distorsion
- scale mode : uniform
you can scale up ALL
your UVs, it's not important if they are out of the top right square.
then you have UVs that are not bad.
after that be sure to have symmetry on your UVs, if it's not the case, cut/merge the corresponding part to have something symmetrical.
(the automatic mapping can cut left / right UVs differently)
follow the rule of real life seam: cut your UVs along edge that are seams on real materials.
try and use the unfolding tool on UVs, always replicate your actions to the symmetrical parts. In most cases, unfolding works well, if it's not the case, unfold only a part of a UV shell, or forget about it.
you can try the relax tool, but never on peripheral vertices (it makes them collapse in the center).
when your multiple UV parts seems good, make sure that you still have symmetry :
flip a "left" UV then move it on top on the "right" UV. move UV vertices if necessary to match both perfectly. then reflip your left UV.
(cut a big UV "centered" UV in the middle to be able to flip a side, then re-merge)
after that you can merge (most parts of) your UVs again. after each merge, try the unfolding tool on vertices around the merge edges (unfold exactly the same vertices symmetricaly.
Repeat merge / unfold while it's necessary.
scale down ALL
your UVs and move them (if multiple parts) to be in the top right square.
If possible, try to center, it will be much easier to make an half texture then copy/flip (without moving) to match the whole UV.