If you have access to a matching fabric, you can take out the under arm seam on the woven shirt and add a gusset. 2" wide at the sleeve hem if it's short sleeved, then slowly tapered to a point where it sets in the shirt. If the shirt is long sleeved, the it's 2" in the underarm area and tapered to a point on both ends. A similar gusset would add some ease to the cap sleeve - no length, but not so fitted.