I've done some work after upgrading to 2.1 (iPhone 2G) and come up with a 'reasonable solution'. It's not perfect, and I hope some others will help. The only 'hack' necessary is /Applications/Preferences.app/General.plist.
General.plist is in binary format so you'll need to either convert it, or download pledit.exe (v1.0c) to edit. Sorry, but I forgot the link, but I found it using Google.
1. Using WinSCP, download General.plist to your desktop.
2. Execute pledit.exe and open General.plist.
HTML Code:
3. Locate the following section (this is the default):
(starts with <dict> ---- ends with </dict>)
<dict>
<key>cell</key>
<string>PSLinkListCell</string>
<key>default</key>
<integer>60</integer>
<key>defaults</key>
<string>com.apple.springboard</string>
<key>detail</key>
<string>PSListItemsController</string>
<key>key</key>
<string>SBAutoLockTime</string>
<key>label</key>
<string>AUTOLOCK</string>
<key>set</key>
<string>setScreenLock:specifier:</string>
<key>validTitles</key>
<array>
<string>1_MINUTES</string>
<string>2_MINUTES</string>
<string>3_MINUTES</string>
<string>4_MINUTES</string>
<string>5_MINUTES</string>
<string>NEVER</string>
</array>
<key>validValues</key>
<array>
<integer>60</integer>
<integer>120</integer>
<integer>180</integer>
<integer>240</integer>
<integer>300</integer>
<integer>-1</integer>
</array>
</dict>
4. Change the whole above to:
(aka: replace the section above with the following
HTML Code:
<dict>
<key>cell</key>
<string>PSLinkListCell</string>
<key>default</key>
<integer>60</integer>
<key>defaults</key>
<string>com.apple.springboard</string>
<key>detail</key>
<string>PSListItemsController</string>
<key>key</key>
<string>SBAutoLockTime</string>
<key>label</key>
<string>AUTOLOCK</string>
<key>set</key>
<string>setScreenLock:specifier:</string>
<key>validTitles</key>
<array>
<string>1_MINUTES</string>
<string>2_MINUTES</string>
<string>3_MINUTES</string>
<string>4_MINUTES</string>
<string>5_MINUTES</string>
<string>10_MINUTES</string>
<string>20_MINUTES</string>
<string>1440_MINUTES</string>
<string>NEVER</string>
</array>
<key>validValues</key>
<array>
<integer>60</integer>
<integer>120</integer>
<integer>180</integer>
<integer>240</integer>
<integer>300</integer>
<integer>600</integer>
<integer>1200</integer>
<integer>86400</integer>
<integer>-1</integer>
</array>
</dict>
<dict>
<key>cell</key>
<string>PSLinkListCell</string>
<key>default</key>
<integer>60</integer>
<key>defaults</key>
<string>com.apple.springboard</string>
<key>detail</key>
<string>PSListItemsController</string>
<key>key</key>
<string>SBAutoDimTime</string>
<key>label</key>
<string>Screen dims after</string>
<key>validTitles</key>
<array>
<string>NEVER</string>
<string>15_SEC</string>
<string>30_SEC</string>
<string>1_MINUTES</string>
<string>2_MINUTES</string>
<string>3_MINUTES</string>
<string>4_MINUTES</string>
<string>5_MINUTES</string>
<string>10_MINUTES</string>
</array>
<key>validValues</key>
<array>
<integer>-1</integer>
<integer>15</integer>
<integer>30</integer>
<integer>60</integer>
<integer>120</integer>
<integer>180</integer>
<integer>240</integer>
<integer>300</integer>
<integer>600</integer>
</array>
</dict>
5. "Save as.." General+.plist
6. Using WinSCP, Copy General+.plist to the same directory (/Applications/Preferences.app)
7. Select General.plist and rename to General.orig.plist
8. Select General+.plist and rename to General.plist
9. Disconnect WinSCP session
10. Do a FULL iPhone ReBoot (not respring)
After reboot, select your Lock/Dim options in Settings / General
Here are the issues:
1. When a 'Screen dims after...' value is desired, an Auto-Lock value of NEVER doesn't work (soon I hope),
2. You must set a value for Auto-Lock BEFORE 'Screen dims after..'. else 'Screen dims after...' is reset to NEVER
3. I added 1440_Minutes (1day) to simulate NEVER.
4. You will notice some validTitles are mapped to more readable English, some are not. I assume this can be fixed ... but who knows (help)
Note: I used BossPrefs to have SSH enabled on boot .... just in case something went wrong. Your backup General.orig.plist is there for emergencies 
I hope others are interested ... and willing to help clear up my known issues (and possibly others) and make this a perfect hack. Anyone willing?
Have fun