Solution 1
You can use German locales on your British servers. If that's a problem with your app, then you can adjust the values in the app.
Solution 2
You can find all DateTime columns of all tables in your database
select schema_name(t.schema_id) + '.' + t.name as [table],
c.column_id,
c.name as column_name,
type_name(user_type_id) as data_type,
scale as second_scale
from sys.columns c
join sys.tables t
on t.object_id = c.object_id
where type_name(user_type_id) in ('date', 'datetimeoffset',
'datetime2', 'smalldatetime', 'datetime', 'time')
order by [table],
c.column_id;
(you can of course adjust the types if needed) and you can even generate a script for each column:
select 'update ' + schema_name(t.schema_id) + '.' + t.name + ' set ' + column_name + ' = dateadd(hour, -1, ' + column_name + ')'
from sys.columns c
join sys.tables t
on t.object_id = c.object_id
where type_name(user_type_id) in ('date', 'datetimeoffset',
'datetime2', 'smalldatetime', 'datetime', 'time')
order by [table],
c.column_id;
and then run the scripts generated this way. Note that this is untested, so you should test this very well before you apply this on your actual database.
Solution 3
Always subtract an hour from dates earlier than a given date. This is an admittedly messy solution and it should only be done if all else fails.