I think the best method, given the limitations you have listed is to do the followingI looked into this some time ago - attached is a plot of what I discovered. It shows the varying batting average for players at various ages; I separated them out for top and middle order as it's batsmen I was interested in, and added a trend line for each.
It tends to be queered by the fact that only the very best last to "old age", e.g. the very high figures over 40 are largely Hobbs. This is because there are fewer and better batsmen playing later on, though it does suggest a peak in the 30s.
It might be better to look at each batsman in turn and determine their peak then summarise that, though that would require a great deal of work - and of course, require a definition of what peak is.
Player Runs Start Date Date of Birth Age at score
BC Lara*(WI) 400* 10/04/2004 2/05/1969 34.96438356
ML Hayden*(Aus) 380 9/10/2003 29/10/1971 31.96712329
BC Lara*(WI) 375 16/04/1994
DPMD Jayawardene*(SL) 374 27/07/2006
GS Sobers*(WI) 365* 26/02/1958 28/07/1936 21.59726027
L Hutton*(Eng) 364 20/08/1938 23/06/1916 22.17260274
ST Jayasuriya*(SL) 340 2/08/1997 30/06/1969 28.10958904
Hanif Mohammad*(Pak) 337 17/01/1958 21/12/1934 23.09041096
WR Hammond*(Eng) 336* 31/03/1933 19/06/1903 29.80273973
MA Taylor*(Aus) 334* 15/10/1998 27/10/1964 33.9890411
DG Bradman*(Aus) 334 11/07/1930 27/08/1908 21.88493151
GA Gooch*(Eng) 333 26/07/1990 23/07/1953 37.03287671
CH Gayle*(WI) 333 15/11/2010
MJ Clarke*(Aus) 329* 3/01/2012
Inzamam-ul-Haq*(Pak) 329 1/05/2002 3/03/1970 32.18356164
A Sandham*(Eng) 325 3/04/1930
V Sehwag*(India) 319 26/03/2008
CH Gayle*(WI) 317 29/04/2005
Younis Khan*(Pak) 313 21/02/2009
RB Simpson*(Aus) 311 23/07/1964 3/02/1936 28.48767123
JH Edrich*(Eng) 310* 8/07/1965 21/06/1937 28.06575342
V Sehwag*(India) 309 28/03/2004
RM Cowper*(Aus) 307 11/02/1966 5/10/1940 25.36986301
DG Bradman*(Aus) 304 20/07/1934
LG Rowe*(WI) 302 6/03/1974 8/01/1949 25.17260274
DG Bradman*(Aus) 299* 29/01/1932
MD Crowe*(NZ) 299 31/01/1991 22/09/1962 28.37808219
AN Cook*(Eng) 294 10/08/2011
V Sehwag*(India) 293 2/12/2009
IVA Richards*(WI) 291 12/08/1976 7/03/1952 24.44931507
RR Sarwan*(WI) 291 26/02/2009
RE Foster*(Eng) 287 11/12/1903
KC Sangakkara*(SL) 287 27/07/2006
PBH May*(Eng) 285* 30/05/1957 31/12/1929 27.43013699
VVS Laxman*(India) 281 11/03/2001
Javed Miandad*(Pak) 280* 14/01/1983 12/06/1957 25.60821918
AB de Villiers*(SA) 278* 20/11/2010
DCS Compton*(Eng) 278 1/07/1954 23/05/1918 36.13150685
BC Lara*(WI) 277 2/01/1993
GC Smith*(SA) 277 24/07/2003
DJ Cullinan*(SA) 275* 27/02/1999 4/03/1967 32.00821918
G Kirsten*(SA) 275 26/12/1999 23/12/1967 32.03013699
DPMD Jayawardene*(SL) 275 16/11/2009
SP Fleming*(NZ) 274* 25/04/2003 1/04/1973 30.08493151
RG Pollock*(SA) 274 5/02/1970 27/02/1944 25.95890411
Zaheer Abbas*(Pak) 274 3/06/1971 24/07/1947 23.87671233
Javed Miandad*(Pak) 271 24/02/1989
GA Headley*(WI) 270* 14/03/1935 30/05/1909 25.80547945
DG Bradman*(Aus) 270 1/01/1937
R Dravid*(India) 270 13/04/2004 11/01/1973 31.2739726
KC Sangakkara*(SL) 270 14/05/2004
GN Yallop*(Aus) 268 26/12/1983 7/10/1952 31.23835616
BA Young*(NZ) 267* 7/03/1997 3/11/1964 32.36164384
PA de Silva*(SL) 267 31/01/1991 17/10/1965 25.30684932
Average 28.52776256