Throughout we take epsilon to be 1/4.

VariableNames[number_,string_]:=Table[ToExpression[ToString[string]<>ToString[i]],{i,1,number}]

Mon[x_,y_,S_]:=(x^(S[[1]]))*(y^(S[[2]]))

PolyMon[x_,y_,S_]:=Module[{permset},permset=Permutations[S];Sum[Mon[x,y,permset[[i]]],{i,1,Length[permset]}]]

PossibleSignatures[d_]:=Module[{i,j},Union[Flatten[Union[Table[Table[IntegerPartitions[i,{2}][[j]],{j,1,Length[IntegerPartitions[i,{2}]]}],{i,0,d}]],1],
Flatten[Union[Table[Table[Append[IntegerPartitions[i,{1}][[j]],0],{j,1,Length[IntegerPartitions[i,{1}]]}],{i,0,d}]],1],
Flatten[Union[Table[Table[Append[Append[IntegerPartitions[i,{0}][[j]],0],0],{j,1,Length[IntegerPartitions[i,{0}]]}],{i,0,d}]],1]]]

PolyGen[x_,y_,d_,VarString_]:=Module[{types,vars},types=Flatten[Map[Permutations,PossibleSignatures[d]],1];vars=VariableNames[Length[types],VarString];{Sum[vars[[i]]*Mon[x,y,types[[i]]],{i,1,Length[types]}],vars}]

SymmPolyGen[x_,y_,d_,VarString_]:=Module[{types,vars},types=PossibleSignatures[d];vars=VariableNames[Length[types],VarString];{Sum[vars[[i]]*PolyMon[x,y,types[[i]]],{i,1,Length[types]}],vars}]

PolyInt[Expr_,Var_,Bnds_]:=Module[{n,tmp},tmp=Expand[Expr];Sum[Coefficient[tmp,Var,n]*(Bnds[[2]]^(n+1)-Bnds[[1]]^(n+1))/(n+1),{n,0,Max[0,Exponent[tmp,Var]]}]]

PolytopeInt[Expr_,Polytope_]:=Module[{tmp},If[Length[Polytope]==0,Expr,tmp=PolyInt[Expr,Polytope[[1]][[1]],Polytope[[1]][[2]]];
PolytopeInt[tmp,Delete[Polytope,1]]]]

I1[x_,y_,eps_]:={{{y,{0,3/4-x}},{x,{0,3/4}}}};

IIntegral[GMain_,eps_]:=Module[{},
Iterm1=PolytopeInt[(GMain^2),First[I1[x,y,eps]]];
Expand[Iterm1]
]

J1[x_,y_,eps_]:={{{y,{0,3/4-x}},{x,{0,3/4}}}};
J2[x_,eps_]:={{{x,{0,3/4}}}};
J3[x_,y_,eps_]:={{{y,{5/4,3/2-x}},{x,{0,1/4}}}};
J4[x_,y_,eps_]:={{{y,{5/4-x,5/4}},{x,{0,1/4}}}};
J5[x_,y_,eps_]:={{{y,{5/4-x,3/2-x}},{x,{1/4,1/2}}}};
J6[x_,y_,eps_]:={{{y,{3/4,3/2-x}},{x,{1/2,3/4}}}};
J7[x_,y_,eps_]:={{{y,{5/4-x,3/4}},{x,{1/2,3/4}}}};

JIntegral[GMain_,GB_,GC_,GD_,GE_,H1_,H2_,eps_]:=Module[{},
Jterm1=PolytopeInt[(((GMain))^2)*(3/2-x-y),First[J1[x,y,eps]]];
Jterm2=PolytopeInt[(((PolyInt[GMain,y,{0,3/4-x}]))^2),First[J2[x,eps]]];
Jterm3=PolytopeInt[GB*(3/2-x-y)*H1,First[J3[x,y,eps]]];
Jterm4=PolytopeInt[GC*(3/2-x-y)*H1,First[J4[x,y,eps]]];
Jterm5=PolytopeInt[GD*(3/2-x-y)*H1,First[J5[x,y,eps]]];
Jterm6=PolytopeInt[GD*(3/2-x-y)*H1,First[J6[x,y,eps]]];
Jterm7=PolytopeInt[GE*(3/4-x)*H2,First[J7[x,y,eps]]];
Expand[Jterm1+2*(Jterm2+Jterm3+Jterm4+Jterm5+Jterm6+Jterm7)]
]

Answer[d_,eps_]:=Module[{vars,SetOfConditions,SetOfReductions,count,GMain,GB,GC,GD,GE,H1,H2,H2Alt,AAvars,BBvars,CCvars},
Print[DateList[]];
{GMain,AAvars}=SymmPolyGen[x,y,d,AA];
{GB,BBvars}=PolyGen[x,y,d,BB];
{GC,CCvars}=PolyGen[x,y,d,CC];
H1=Factor[(1/((3/2)-x-y))*PolyInt[GMain,y,{0,(3/2)-x-y}]];
H2=Factor[(1/((3/4)-x))*PolyInt[GMain,y,{0,(3/4)-x}]];
H2Alt=Factor[(1/((3/4)-y))*PolyInt[GMain,x,{0,(3/4)-y}]];
GE=-H2-H2Alt;
GD=-H1;
vars=Union[AAvars,BBvars,CCvars];
SetOfConditions=Union[Flatten[CoefficientArrays[(3/2-x-y)*GB+PolyInt[GB,x,{0,3/2-x-y}]+(3/2-x-y)*H1,{x,y}]//Normal],Flatten[CoefficientArrays[(3/2-x-y)*GC+PolyInt[GC,x,{5/4-y,3/2-x-y}]+(3/2-x-y)*H1,{x,y}]//Normal]];
SetOfReductions=Reduce[SetOfConditions==Table[0,{i,1,Length[SetOfConditions]}]];
count=1;
While[count≤Length[SetOfReductions],
vars=Drop[vars,First[Position[vars,SetOfReductions[[count,1]]]]];
GMain=GMain/.SetOfReductions[[count,1]]->SetOfReductions[[count,2]];
GB=GB/.SetOfReductions[[count,1]]->SetOfReductions[[count,2]];
GC=GC/.SetOfReductions[[count,1]]->SetOfReductions[[count,2]];
count=count+1
];
H1=Factor[(1/((3/2)-x-y))*PolyInt[GMain,y,{0,(3/2)-x-y}]];
H2=Factor[(1/((3/4)-x))*PolyInt[GMain,y,{0,(3/4)-x}]];
H2Alt=Factor[(1/((3/4)-y))*PolyInt[GMain,x,{0,(3/4)-y}]];
GE=-H2-H2Alt;
GD=-H1;
Iint=IIntegral[GMain,eps];
Print["I integral done ",DateList[]];
Jint=JIntegral[GMain,GB,GC,GD,GE,H1,H2,eps];
Print["J integral done ",DateList[]];
Print["Here are the variables ",vars];
M1=CoefficientArrays[Expand[Iint],vars,Symmetric->True][[3]];
M2=CoefficientArrays[Expand[Jint],vars,Symmetric->True][[3]];
M3=Inverse[M1].M2;
Print["Inverse matrix done ",DateList[]];
RatVec=Rationalize[Eigenvectors[N[M3,150],1][[1]],10^(-40)];
Print["Vector found ",DateList[]];
Ratio=(RatVec.M2.RatVec)/(RatVec.M1.RatVec);
Clear["AA*","BB*","CC*"];
Print["Ratio is ",N[Ratio,20]];
N[Ratio,20]
]

Answer[4,1/4]

Here is an explicit example.  Go to the end for the explicit polynomials being used.

d=3

eps=1/4

{GMain,AAvars}=SymmPolyGen[x,y,d,AA];
{GB,BBvars}=PolyGen[x,y,d,BB];
{GC,CCvars}=PolyGen[x,y,d,CC];
H1=Factor[(1/((3/2)-x-y))*PolyInt[GMain,y,{0,(3/2)-x-y}]];
H2=Factor[(1/((3/4)-x))*PolyInt[GMain,y,{0,(3/4)-x}]];
H2Alt=Factor[(1/((3/4)-y))*PolyInt[GMain,x,{0,(3/4)-y}]];
GE=-H2-H2Alt;
GD=-H1;
vars=Union[AAvars,BBvars,CCvars];
SetOfConditions=Union[Flatten[CoefficientArrays[(3/2-x-y)*GB+PolyInt[GB,x,{0,3/2-x-y}]+(3/2-x-y)*H1,{x,y}]//Normal],Flatten[CoefficientArrays[(3/2-x-y)*GC+PolyInt[GC,x,{5/4-y,3/2-x-y}]+(3/2-x-y)*H1,{x,y}]//Normal]];
SetOfReductions=Reduce[SetOfConditions==Table[0,{i,1,Length[SetOfConditions]}]];
count=1;
While[count≤Length[SetOfReductions],
vars=Drop[vars,First[Position[vars,SetOfReductions[[count,1]]]]];
GMain=GMain/.SetOfReductions[[count,1]]->SetOfReductions[[count,2]];
GB=GB/.SetOfReductions[[count,1]]->SetOfReductions[[count,2]];
GC=GC/.SetOfReductions[[count,1]]->SetOfReductions[[count,2]];
count=count+1
];
H1=Factor[(1/((3/2)-x-y))*PolyInt[GMain,y,{0,(3/2)-x-y}]];
H2=Factor[(1/((3/4)-x))*PolyInt[GMain,y,{0,(3/4)-x}]];
H2Alt=Factor[(1/((3/4)-y))*PolyInt[GMain,x,{0,(3/4)-y}]];
GE=-H2-H2Alt;
GD=-H1;
Iint=IIntegral[GMain,eps];
Print["I integral done ",DateList[]];
Jint=JIntegral[GMain,GB,GC,GD,GE,H1,H2,eps];
Print["J integral done ",DateList[]];
Print["Here are the variables ",vars];
M1=CoefficientArrays[Expand[Iint],vars,Symmetric->True][[3]];
M2=CoefficientArrays[Expand[Jint],vars,Symmetric->True][[3]];
M3=Inverse[M1].M2;
Print["Inverse matrix done ",DateList[]];
RatVec=Rationalize[Eigenvectors[N[M3,150],1][[1]],10^(-40)];
Print["Vector found ",DateList[]];
Ratio=(RatVec.M2.RatVec)/(RatVec.M1.RatVec);
Clear["AA*","BB*","CC*"];
Print["Ratio is ",N[Ratio,20]];
N[Ratio,20]

vars

tt=RatVec/First[RatVec]

count=1;
While[count≤Length[vars],
GMain=GMain/.vars[[count]]->tt[[count]];
GB=GB/.vars[[count]]->tt[[count]];
GC=GC/.vars[[count]]->tt[[count]];
Iint=Iint/. vars[[count]]->tt[[count]];
Jint=Jint/. vars[[count]]->tt[[count]];
count=count+1
];

H1=Factor[(1/((3/2)-x-y))*PolyInt[GMain,y,{0,(3/2)-x-y}]];
H2=Factor[(1/((3/4)-x))*PolyInt[GMain,y,{0,(3/4)-x}]];
H2Alt=Factor[(1/((3/4)-y))*PolyInt[GMain,x,{0,(3/4)-y}]];
GE=-H2-H2Alt;
GD=-H1;

Here are the parameters and the integral outputs.

N[GMain]

N[GB]

N[GC]

N[Expand[GD]]

N[Expand[GE]]

N[Expand[H1]]

N[Expand[H2]]

N[Iint]

N[Jint]