The best option is to divide the region in triangles.
First of all we need to assume that the circular segment that join two points is part of a great circle.
That's the easiest assumption.
If the region is not convex, we can always add extra areas to be regarded as negative areas.
The area of a triangle on a unit sphere is simply (Girard's theorem): $$Area = A+B+C-\pi,$$ where $A,B,C$ are the angles between 2 points.
The angle between 2 points $p$ and $p'$ is given by $${\displaystyle {\begin{aligned}{A(p, p') }&={2 \arcsin \frac{1}{\sqrt{2}} \sqrt {1-\sin {\theta }\sin {\theta '}\cos {(\varphi -\varphi ')}-\cos {\theta }\cos {\theta '}}}\end{aligned}}}$$
For this last formula, check https://en.wikipedia.org/wiki/Spherical_coordinate_system#Distance_in_spherical_coordinates.
Once we have the distance between 2 points on a unit sphere, this is the chord on a great circle, a unit circle, and taking the angle is quite trivial: $2 \arcsin(D/2)$