After 21 days and 56 submissions on IOI 2010 Maze, I finally broke the 100 point barrier and achieved a score of 100.081 / 100.
Methodology
It's just simulated annealing + a lot a lot of time.
The neighbour function to generate a new state was just randomly choosing one cell to change from '$$$\text{#}$$$' to '$$$\text{.}$$$' or from '$$$\text{.}$$$' to '$$$\text{#}$$$'. Remember to take care that there must be exactly one '$$$\text{.}$$$' at the edge of the maze at all times.
The energy function that we are optimizing is the question itself, which is the maximum shortest path.
The acceptance probability function is the classic exponential function based on the Boltzmann probability distribution.
Finally, the initial temperature I used was $$$t_0 = 2.5$$$ and the geometric temperature reduction $$$t' = t\cdot \alpha$$$